0e3ad59d by renchao@pashanhoo.com

Merge branch 'dev'

2 parents ea7a6e14 0fa3bba0
Showing 44 changed files with 1664 additions and 2749 deletions
......@@ -129,7 +129,7 @@ export function editCompanyMaterialList (data, bsmCompany) {
* @description: 是否覆盖才材料信息
* @author: renchao
*/
export function replace (bsmCompany, bsmSldy, bsmSlsq) {
export function replace (bsmCompany, bsmSlsq, bsmSldy) {
return request({
url: SERVER.SERVERAPI + '/rest/sys/company/replace',
method: 'get',
......
<template>
<dialogBox title="房屋明细查询" @closeDialog="closeDialog" width="75%" :isButton="false" v-model="myValue">
<el-steps :active="activeStep" finish-status="success">
<div v-Loading="Loading">
<el-steps :active="activeStep" finish-status="success" v-if="isADD">
<el-step title="条件录入"></el-step>
<el-step title="结果查询"></el-step>
<el-step title="结果展示"></el-step>
<el-step title="查询结果"></el-step>
</el-steps>
<el-steps :active="activeStep" finish-status="success" v-else>
<el-step title="条件录入" @click.native="on_click(0)" class="pointer"></el-step>
<el-step title="查询结果" @click.native="on_click(2)" class="pointer"></el-step>
</el-steps>
<div v-if="isSearch">
<dydjbInfo ref="dydjbInfo" />
......@@ -42,39 +46,42 @@
<lb-table :column="qlrColumns" key="ql2r" :data="form.qlrList" :maxHeight="200" heightNumSetting
:pagination="false">
</lb-table>
<div class="submit-button" style="padding-bottom:50px">
<el-button @click="resetClick" v-show="!isSearch">重置</el-button>
<el-button type="primary" @click="queryChick" v-show="!isSearch">查询</el-button>
<el-button @click="closeDialog">关闭</el-button>
</div>
</div>
<div class="submit-button" style="padding-bottom:50px" v-if="this.formData.sqcxBsm==''">
<el-button @click="resetClick" v-show="!isSearch">重置</el-button>
<el-button type="primary" @click="queryChick" v-show="!isSearch">查询</el-button>
<el-button @click="closeDialog">关闭</el-button>
</div>
</div>
</dialogBox>
</div>
</template>
<script>
import { mapGetters } from "vuex";
import store from '@/store/index.js'
import dydjbInfo from "./dydjbInfo.vue";
import { getLodop } from "@/utils/LodopFuncs"
import { datas, sendThis } from "./dydjbdata";
import { addFwmxCxjgXx, getFwmxInfo, printJtcfInfo } from "@/api/jtfc.js";
import { getPrintTemplateByCode } from "@/api/print";
import { datas, sendThis } from "./dydjbdata";
import { getLodop } from "@/utils/LodopFuncs"
import dydjbInfo from "./dydjbInfo.vue";
import { mapGetters } from "vuex";
export default {
computed: {
...mapGetters(["dictData"]),
},
components: { dydjbInfo },
props: {
value: { type: Boolean, default: false },
sqcxBsm: { type: String, default: "" },
formData: {
type: Object,
default: () => { },
}
},
mounted () {
sendThis(this);
},
data () {
return {
isADD: true,
Loading: false,
activeStep: 0,
myValue: this.value,
//是否查询
isSearch: false,
//查询结果列表字段
......@@ -99,22 +106,15 @@
},
};
},
mounted () {
this.loadData()
this.isADD = this.formData.isAdd
if (this.formData.sqcxBsm != '') {
this.activeStep = 2;
this.isSearch = true;
}
},
watch: {
value (val) {
this.myValue = val;
let that = this
if (val) {
this.form.sqrList = []
this.form.qlrList = []
this.isSearch = false
if (this.sqcxBsm == "") {
that.add("sqr");
that.add("qlr");
} else {
that.loadData();
}
}
},
"form.djSqcxDO.ycqrgx" (val) {
if (val == "1") {
this.form.qlrList = _.cloneDeep(this.form.sqrList);
......@@ -123,13 +123,25 @@
this.add("qlr");
}
},
"form.sqrList" (val) {
if (this.form.djSqcxDO.ycqrgx == '1') {
this.form.qlrList = _.cloneDeep(this.form.sqrList)
}
"form.sqrList": {
handler: function (val) {
if (this.form.djSqcxDO.ycqrgx == '1') {
this.form.qlrList = _.cloneDeep(val)
}
},
deep: true
}
},
methods: {
// 步骤条
on_click (e) {
if (e != '' || e != null) { this.activeStep = e }
if (e == 0) {
this.isSearch = false
} else {
this.isSearch = true
}
},
/**
* @description: closeDialog
* @author: renchao
......@@ -145,49 +157,44 @@
dyjlList: [],
}
},
//加载详细信息
/**
* @description: 加载详细信息
* @author: renchao
*/
loadData () {
this.$startLoading();
getFwmxInfo({ sqcxBsm: this.sqcxBsm }).then((res) => {
this.$endLoading();
this.Loading = true
getFwmxInfo({ sqcxBsm: this.formData.sqcxBsm }).then((res) => {
this.Loading = false
if (res.code == 200) {
this.activeStep = 2;
this.isSearch = true;
this.$nextTick(() => {
this.$refs.dydjbInfo.setResult(res.result)
})
}
});
}).catch(() => {
this.Loading = false
})
},
//查询结果
/**
* @description: 查询结果
* @author: renchao
*/
queryChick () {
this.$startLoading();
this.Loading = true
this.activeStep = 1;
store.dispatch('user/reWorkFresh', false)
addFwmxCxjgXx(this.form).then((res) => {
this.$endLoading();
this.Loading = false
if (res.code == 200) {
store.dispatch('user/reWorkFresh', true)
this.activeStep = 2;
this.isSearch = true;
this.isADD = false
this.$nextTick(() => {
this.$refs.dydjbInfo.setResult(res.result)
})
this.$parent.queryClick();
}
});
})
},
//重置
/**
* @description: 重置
* @author: renchao
*/
resetClick () {
this.form.djSqcxDO = { ycqrgx: "1", cxyt: "", bdcqzh: "" };
this.form.sqrList = _.cloneDeep([this.newData]);
......@@ -214,7 +221,6 @@
this.form.qlrList.push(_.cloneDeep(this.newData));
}
},
//移除申请人或权利人
/**
* @description: 移除申请人或权利人
* @param {*} index
......@@ -229,7 +235,6 @@
this.form.qlrList.splice(index, 1);
}
},
//电话号码校验
/**
* @description: 电话号码校验
* @param {*} row
......@@ -249,9 +254,12 @@
};
</script>
<style scoped lang="scss">
@import "~@/styles/mixin.scss";
@import "~@/styles/public.scss";
/deep/.dialog_title::before{
@import "~@/styles/mixin.scss";
@import "~@/styles/public.scss";
/deep/.el-step__title {
margin-left: -15px;
}
/deep/.dialog_title::before {
content: "";
display: block;
width: 4px;
......@@ -261,25 +269,21 @@
top: -4px;
left: 0px;
}
.title {
padding-bottom: 10px;
margin-bottom: 10px;
display: block;
border-bottom: 1px solid $borderColor;
}
.title {
padding-bottom: 10px;
margin-bottom: 10px;
display: block;
border-bottom: 1px solid $borderColor;
}
.jtfccx-edit-con {
height: 80vh;
overflow-y: scroll;
}
.jtfccx-edit {
@include flex;
flex-direction: column;
overflow-y: hidden;
max-height: 85vh;
padding: 0 2px;
.jtfccx-edit-con {
flex: 1;
height: 100%;
overflow-y: scroll;
}
height: 82vh;
.submit-button {
text-align: center;
......@@ -289,27 +293,27 @@
}
}
/deep/.el-dialog__headerbtn .el-dialog__close {
color: #6B7A99 !important;
/deep/.el-dialog__headerbtn .el-dialog__close {
color: #6b7a99 !important;
position: relative;
top: -7px;
}
/deep/.dialogBox .dialog_title{
.el-icon-full-screen{
color: #409eff!important;
}
b {
color: white;
flex: 0.1;
margin: auto;
text-align: center;
align-items: center;
}
}
/deep/.el-dialog__header {
background: linear-gradient(3deg, #409eff, #a7cbee);
}
/deep/.el-dialog__headerbtn .el-dialog__close{
color: #409eff!important;
}
/deep/.dialogBox .dialog_title {
.el-icon-full-screen {
color: #409eff !important;
}
b {
color: white;
flex: 0.1;
margin: auto;
text-align: center;
align-items: center;
}
}
/deep/.el-dialog__header {
background: linear-gradient(3deg, #409eff, #a7cbee);
}
/deep/.el-dialog__headerbtn .el-dialog__close {
color: #409eff !important;
}
</style>
......
......@@ -2,31 +2,38 @@
<div class="jtfccx-edit-con">
<b class="title"></b>
<b class="title">房屋状况</b>
<lb-table :column="fwColumns" key="fwzk" :data="resultData.hdetailList" :maxHeight="200" heightNumSetting
<lb-table :column="fwColumns" key="fwzk" :data="resultData.hdetailList"
:heightNumSetting="true" :minHeight="150" :rowStyleHeight='25'
:pagination="false">
</lb-table>
<b class="title">土地状况</b>
<lb-table :column="tdColumns" key="tdzk" :data="resultData.zdjbxxDetail" :maxHeight="200" heightNumSetting
<lb-table :column="tdColumns" key="tdzk" :data="resultData.zdjbxxDetail"
:heightNumSetting="true" :minHeight="150" :rowStyleHeight='25'
:pagination="false">
</lb-table>
<b class="title">权属状况</b>
<lb-table :column="qszkColumns" key="qszk" :data="resultData.qsxxDetail" :maxHeight="200" heightNumSetting
<lb-table :column="qszkColumns" key="qszk" :data="resultData.qsxxDetail"
:heightNumSetting="true" :minHeight="150" :rowStyleHeight='25'
:pagination="false">
</lb-table>
<b class="title">抵押登记</b>
<lb-table :column="diyaColumns" key="dydj" :data="resultData.dyaqDetail" :maxHeight="200" heightNumSetting
<lb-table :column="diyaColumns" key="dydj" :data="resultData.dyaqDetail"
:heightNumSetting="true" :minHeight="150" :rowStyleHeight='25'
:pagination="false">
</lb-table>
<b class="title">预告登记</b>
<lb-table :column="ygdjColumns" key="ygdj" :data="resultData.ygdjDetail" :maxHeight="200" heightNumSetting
<lb-table :column="ygdjColumns" key="ygdj" :data="resultData.ygdjDetail"
:heightNumSetting="true" :minHeight="150" :rowStyleHeight='25'
:pagination="false">
</lb-table>
<b class="title">查封状况</b>
<lb-table :column="cfdjColumns" key="cfdj" :data="resultData.cfdjDetail" :maxHeight="200" heightNumSetting
<lb-table :column="cfdjColumns" key="cfdj" :data="resultData.cfdjDetail"
:heightNumSetting="true" :minHeight="150" :rowStyleHeight='25'
:pagination="false">
</lb-table>
<b class="title">异议登记</b>
<lb-table :column="yydjColumns" key="yydj" :data="resultData.yydjDetail" :maxHeight="200" heightNumSetting
<lb-table :column="yydjColumns" key="yydj" :data="resultData.yydjDetail"
:heightNumSetting="true" :minHeight="150" :rowStyleHeight='25'
:pagination="false">
</lb-table>
</div>
......@@ -98,10 +105,6 @@
</script>
<style scoped lang="scss">
@import "~@/styles/mixin.scss";
.jtfccx-edit-con {
max-height: 85vh;
overflow-y: scroll;
}
.table1 {
border-spacing: 0;
border-collapse: collapse;
......
......@@ -9,7 +9,7 @@ class data extends filter {
constructor() {
super()
}
columns() {
columns () {
return [
{
prop: 'qszt',
......@@ -45,11 +45,11 @@ class data extends filter {
}
]
}
fwCol() {
fwCol () {
return [
{
prop: 'zdymc',
label: '幢号111',
label: '幢号',
},
{
prop: 'hh',
......@@ -85,7 +85,7 @@ class data extends filter {
}
]
}
tdCol() {
tdCol () {
return [
{
prop: 'qsxz',
......@@ -121,17 +121,17 @@ class data extends filter {
}
]
}
diyaCol() {
diyaCol () {
return [
{
prop: 'dyfs',
label: '抵押方式',
render: (h, scope) => {
switch(scope.row.dyfs) {
switch (scope.row.dyfs) {
case '1':
return <div>一般抵押</div>
case '2':
return <div>最高额抵押</div>
case '2':
return <div>最高额抵押</div>
}
}
},
......@@ -161,7 +161,7 @@ class data extends filter {
}
]
}
ygdjCol() {
ygdjCol () {
return [
{
prop: 'ygdjzl',
......@@ -193,7 +193,7 @@ class data extends filter {
}
]
}
cfdjCol() {
cfdjCol () {
return [
{
prop: 'cfjg',
......@@ -217,7 +217,7 @@ class data extends filter {
}
]
}
yydjCol() {
yydjCol () {
return [
{
prop: 'yysqr',
......
......@@ -34,24 +34,22 @@
</el-form>
</div>
<!-- 表格 -->
<div class="from-clues-content">
<lb-table :page-size="pageData.size" class="loadingtext" border @sort-change="handleSort"
<div class="from-clues-content loadingtext">
<lb-table :page-size="pageData.size" border @sort-change="handleSort"
:current-page.sync="pageData.current" :total="tableData.total" @size-change="handleSizeChange"
@p-current-change="handleCurrentChange" :column="tableData.columns" :data="tableData.data">
</lb-table>
</div>
<addDydjb v-model="isDialog" :sqcxBsm="sqcxBsm" />
</div>
</template>
<script>
import { mapGetters } from "vuex";
import table from "@/utils/mixin/table";
import store from '@/store/index.js'
import { datas, sendThis } from "./dydjbdata";
import addDydjb from "./components/addDydjb.vue";
import { getSqcxPage } from "@/api/jtfc.js";
export default {
name: "dydjb",
components: { addDydjb },
mixins: [table],
mounted () {
sendThis(this);
......@@ -79,8 +77,21 @@
activated () {
this.queryClick();
},
computed: {
workFresh () {
return store.state.user.workFresh
}
},
watch: {
workFresh: {
handler (newValue, oldValue) {
this.queryClick()
},
deep: true,
immediate: true
}
},
methods: {
// 初始化数据
/**
* @description: 初始化数据
* @author: renchao
......@@ -102,8 +113,8 @@
* @author: renchao
*/
dydjbClick (scope) {
this.$popupDialog("打印登记薄", "sqcx/dydjb/components/dydjbInfo", {
bsmSqcx: scope.row.bsmSqcx,
this.$popupDialog("明细详情", "sqcx/dydjb/components/addDydjb", {
sqcxBsm: scope.row.bsmSqcx,
})
},
/**
......@@ -120,8 +131,10 @@
* @author: renchao
*/
openAddDialog () {
this.isDialog = true
this.sqcxBsm = ''
this.$popupDialog("房屋明细查询", "sqcx/dydjb/components/addDydjb", {
sqcxBsm: '',
isAdd: true
})
}
},
};
......
<!--
* @Description:
* @Autor: renchao
* @LastEditTime: 2023-11-15 16:28:13
* @LastEditTime: 2024-03-27 10:03:15
-->
<template>
<div class="from-clues">
......@@ -109,7 +109,7 @@
}, '80%')
},
/**
* @description: handleAdd
* @description: handleViewClick
* @param {*} row
* @author: renchao
*/
......
......@@ -33,7 +33,7 @@
</el-form-item>
</el-col>
<el-col :span="6">
<el-form-item label="查询用途:" label-width="90px">{{ form.djSqcxDO.cxyt }}
<el-form-item label="查询用途:">{{ form.djSqcxDO.cxyt }}
</el-form-item>
</el-col>
<el-col :span="6">
......@@ -163,12 +163,11 @@
</script>
<style scoped lang="scss">
@import "~@/styles/mixin.scss";
/deep/.el-form-item {
margin-bottom: 0 !important;
}
.sqcxjlInfo {
max-height: 85vh;
height: 82vh;
overflow-y: scroll;
}
/deep/.el-form-item {
margin-bottom: 0 !important;
}
</style>
......
......@@ -566,7 +566,7 @@
handleSelect (val) {
let that = this
let bsmSldy = window.currentSelect.bsmSldy ? window.currentSelect.bsmSldy : ''
this.$confirm('是否同步材料信息?', '提示', {
this.$confirm('是否使用备案内容及材料信息?', '提示', {
confirmButtonText: '确定',
cancelButtonText: '取消',
distinguishCancelAndClose: true,//区分取消与关闭
......@@ -584,10 +584,10 @@
}
})
}).catch(action => {
if (action == 'cancel') {
that.$emit("updateDetail", _.cloneDeep({ ...val, sqrlx: '2' }));
that.$emit("input", false);
}
// if (action == 'cancel') {
// that.$emit("updateDetail", _.cloneDeep({ ...val, sqrlx: '2' }));
// that.$emit("input", false);
// }
})
},
/**
......
......@@ -111,46 +111,51 @@
data: [],
},
tableDatajf: {
columns: [
{
prop: "jfjs",
label: "计费基数",
columns: [
{
prop: "bdcdyh",
label: "不动产单元号",
},
{
prop: "jflx",
label: "计费类型",
},
prop: "zl",
label: "坐落",
},
{
prop: "jflxmc",
label: "计费类型名称",
prop: "qlrmc",
label: "权利人名称",
},
{
prop: "ysje",
label: "应收金额",
prop: "ywrmc",
label: "义务人名称",
},
{
prop: "qlxzmc",
label: "性质",
},
{
prop: "zkhysje",
label: "折扣后应收金额",
prop: "qlmjmc",
label: "面积",
},
{
prop: "qlrmc",
label: "权利人名称",
prop: "qlytmc",
label: "用途",
},
{
prop: "ywrmc",
label: "义务人名称",
prop: "jflxmc",
label: "计费类型",
},
{
prop: "qlytmc",
label: "权利用途名称",
prop: "ysje",
label: "应收金额",
},
{
prop: "qlxzmc",
label: "权利性质名称",
prop: "jfjs",
label: "计费基数",
},
{
prop: "zl",
label: "坐落",
prop: "zkhysje",
label: "折扣后应收金额",
}
],
data: [],
......
......@@ -5,7 +5,7 @@
</lb-table>
<div class="text-center">
<el-button type="primary" @click="hanldeRecharge">新计费</el-button>
<el-button type="primary" @click="hanldeRecharge"></el-button>
<el-button @click="$popupCacel">取消</el-button>
<el-button type="primary" @click="handleSubmit" plain>保存</el-button>
</div>
......
......@@ -32,18 +32,12 @@
<el-row :gutter="10">
<el-col :span="8">
<el-form-item :class="flag ? 'marginBot0' : ''" label="权利类型:">
<el-select disabled v-model="ruleForm.sldyList[0].qllx" filterable clearable placeholder="请选择权利类型">
<el-option v-for="item in dictData['A8']" :key="item.dcode" :label="item.dname" :value="item.dcode">
</el-option>
</el-select>
<el-input disabled v-model="ruleForm.sldyList[0].qllxmc"></el-input>
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item :class="flag ? 'marginBot0' : ''" label="登记类型:">
<el-select disabled v-model="ruleForm.sldyList[0].djlx" filterable clearable placeholder="请选择登记类型">
<el-option v-for="item in dictData['A21']" :key="item.dcode" :label="item.dname" :value="item.dcode">
</el-option>
</el-select>
<el-input disabled v-model="ruleForm.sldyList[0].djlxmc"></el-input>
</el-form-item>
</el-col>
<el-col :span="8">
......@@ -73,12 +67,12 @@
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item :class="flag ? 'marginBot0' : ''" label="查封文号:" >
<el-form-item :class="flag ? 'marginBot0' : ''" label="查封文号:" prop="cfdj.cfwh">
<el-input v-model="ruleForm.cfdj.cfwh" :disabled="!ableOperation|| isJfOperation"></el-input>
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item :class="flag ? 'marginBot0' : ''" label="查封机关:">
<el-form-item :class="flag ? 'marginBot0' : ''" label="查封机关:" prop="cfdj.cfjg">
<el-input v-model="ruleForm.cfdj.cfjg" :disabled="!ableOperation|| isJfOperation"></el-input>
</el-form-item>
</el-col>
......@@ -90,13 +84,13 @@
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item :class="flag ? 'marginBot0' : ''" label="查封起始时间:">
<el-form-item :class="flag ? 'marginBot0' : ''" label="查封起始时间:" prop="cfdj.cfqssj">
<el-date-picker v-model="ruleForm.cfdj.cfqssj" class="width100" type="date" placeholder="选择日期"
value-format="yyyy-MM-dd" :disabled="!ableOperation|| isJfOperation"></el-date-picker>
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item :class="flag ? 'marginBot0' : ''" label="查封结束时间:">
<el-form-item :class="flag ? 'marginBot0' : ''" label="查封结束时间:" prop="cfdj.cfjssj">
<el-date-picker v-model="ruleForm.cfdj.cfjssj" class="width100"
:disabled="!ableOperation|| isJfOperation" type="date" placeholder="选择日期"
value-format="yyyy-MM-dd"></el-date-picker>
......@@ -138,18 +132,18 @@
</div>
<el-row :gutter="10">
<el-col :span="8">
<el-form-item :class="flag ? 'marginBot0' : ''" label="解封机关:">
<el-form-item :class="flag ? 'marginBot0' : ''" label="解封机关:" prop="cfdj.jfjg">
<el-input v-model="ruleForm.cfdj.jfjg" :disabled="!ableOperation"></el-input>
</el-form-item>
</el-col>
</el-col>
<el-col :span="8">
<el-form-item :class="flag ? 'marginBot0' : ''" label="解封文件:">
<el-input v-model="ruleForm.cfdj.jfwj" :disabled="!ableOperation"></el-input>
<el-form-item :class="flag ? 'marginBot0' : ''" label="解封文号:" prop="cfdj.jfwh">
<el-input v-model="ruleForm.cfdj.jfwh" :disabled="!ableOperation"></el-input>
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item :class="flag ? 'marginBot0' : ''" label="解封文:">
<el-input v-model="ruleForm.cfdj.jfwh" :disabled="!ableOperation"></el-input>
<el-form-item :class="flag ? 'marginBot0' : ''" label="解封文:">
<el-input v-model="ruleForm.cfdj.jfwj" :disabled="!ableOperation"></el-input>
</el-form-item>
</el-col>
</el-row>
......@@ -165,6 +159,7 @@
import qlxxTable from "../commonTable/qlxxTable.vue";
import cfdjTable from "../commonTable/cfdjTable";
import { BatchInit, batchSaveData } from "@/api/workflow/cfdjFlow.js";
import { formValidate } from "./slxxValidate";
import { mapGetters } from "vuex";
export default {
data () {
......@@ -173,11 +168,7 @@
ableOperation: true,
disabled: true,
flagTop: this.flag ? "top" : "",
rules: {
'cfdj.djyy': [
{ required: true, message: '请输入登记原因', trigger: 'blur' }
]
},
rules: {},
//传递参数
propsParam: {},
//页面数据
......@@ -201,7 +192,8 @@
formdata.append("isEdit", this.ableOperation);
BatchInit(formdata).then((res) => {
if (res.code === 200 && res.result) {
this.ruleForm = res.result
this.ruleForm = res.result;
this.rules = formValidate(this.ruleForm.sldyList[0].djlx);
}
})
},
......@@ -237,7 +229,7 @@
} else {
this.$message({
showClose: true,
message: "请输入登记原因",
message: "请输入红框内的相关信息!",
type: "error"
})
return false;
......
......@@ -19,56 +19,34 @@
</div>
<el-row :gutter="10">
<el-col :span="8">
<el-form-item :class="flag ? 'marginBot0' : ''" label="业务号:" prop="slsq.ywh">
<el-form-item :class="flag ? 'marginBot0' : ''" label="业务号:">
<el-input disabled v-model="ruleForm.flow.ywh"></el-input>
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item :class="flag ? 'marginBot0' : ''" label="受理人员:" prop="slsq.slry">
<el-form-item :class="flag ? 'marginBot0' : ''" label="受理人员:">
<el-input disabled v-model="ruleForm.slsq.slry"></el-input>
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item :class="flag ? 'marginBot0' : ''" label="受理时间:" prop="slsq.slsj">
<el-form-item :class="flag ? 'marginBot0' : ''" label="受理时间:">
<el-input disabled v-model="ruleForm.slsq.slsj"></el-input>
</el-form-item>
</el-col>
</el-row>
<el-row :gutter="10">
<el-col :span="8">
<el-form-item :class="flag ? 'marginBot0' : ''" label="权利类型:" prop="slsq.qllx">
<el-select
disabled
v-model="ruleForm.sldy.qllx"
filterable
clearable
placeholder="请选择权利类型">
<el-option
v-for="item in dictData['A8']"
:key="item.dcode"
:label="item.dname"
:value="item.dcode"></el-option>
</el-select>
<el-form-item :class="flag ? 'marginBot0' : ''" label="权利类型:">
<el-input disabled v-model="ruleForm.sldy.qllxmc"></el-input>
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item :class="flag ? 'marginBot0' : ''" label="登记类型:" prop="slsq.djlx">
<el-select
disabled
v-model="ruleForm.sldy.djlx"
filterable
clearable
placeholder="请选择登记类型">
<el-option
v-for="item in dictData['A21']"
:key="item.dcode"
:label="item.dname"
:value="item.dcode"></el-option>
</el-select>
<el-form-item :class="flag ? 'marginBot0' : ''" label="登记类型:">
<el-input disabled v-model="ruleForm.sldy.djlxmc"></el-input>
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item :class="flag ? 'marginBot0' : ''" label="登记情形:" prop="slsq.djqx">
<el-form-item :class="flag ? 'marginBot0' : ''" label="登记情形:">
<el-input disabled v-model="ruleForm.slsq.djqxmc"></el-input>
</el-form-item>
</el-col>
......@@ -92,7 +70,7 @@
</el-col>
<el-col :span="8">
<el-form-item :class="flag ? 'marginBot0' : ''" label="不动产权证号:" prop="qlxx.bdcqzh">
<el-form-item :class="flag ? 'marginBot0' : ''" label="不动产权证号:">
<el-input disabled v-model="ruleForm.ztQlxx.bdcqzh"></el-input>
</el-form-item>
</el-col>
......@@ -104,7 +82,7 @@
</el-row>
<el-row :gutter="10">
<el-col :span="8">
<el-form-item :class="flag ? 'marginBot0' : ''" label="被执行人:" prop="qlxx.qlrmc">
<el-form-item :class="flag ? 'marginBot0' : ''" label="被执行人:">
<el-input disabled v-model="ruleForm.ztQlxx.qlrmc"></el-input>
</el-form-item>
</el-col>
......@@ -121,7 +99,7 @@
</el-row>
<el-row :gutter="10">
<el-col :span="8">
<el-form-item :class="flag ? 'marginBot0' : ''" label="不动产单元号:" prop="qlxx.bdcdyh">
<el-form-item :class="flag ? 'marginBot0' : ''" label="不动产单元号:">
<el-input disabled v-model="ruleForm.ztQlxx.bdcdyh"></el-input>
</el-form-item>
</el-col>
......
......@@ -565,7 +565,7 @@
handleSelect (val) {
let that = this
let bsmSldy = window.currentSelect.bsmSldy ? window.currentSelect.bsmSldy : ''
this.$confirm('是否同步材料信息?', '提示', {
this.$confirm('是否备案内容及材料信息?', '提示', {
confirmButtonText: '确定',
cancelButtonText: '取消',
distinguishCancelAndClose: true,//区分取消与关闭
......@@ -583,10 +583,10 @@
}
})
}).catch(action => {
if (action == 'cancel') {
that.$emit("updateDetail", _.cloneDeep({ ...val, sqrlx: '2' }));
that.$emit("input", false);
}
// if (action == 'cancel') {
// that.$emit("updateDetail", _.cloneDeep({ ...val, sqrlx: '2' }));
// that.$emit("input", false);
// }
})
},
/**
......
......@@ -3,6 +3,7 @@
<div class="slxx">
<el-form
:model="ruleForm"
:rules="rules"
v-Loading="loading"
:label-position="flag ? 'top' : ''"
:inline="flag"
......@@ -75,7 +76,7 @@
v-if="ruleForm.diyaqList && ruleForm.diyaqList.length > 0 && !ruleForm.slsq.djywbm.includes('400')">
<el-col :span="8">
<el-form-item label="抵押方式:">
<el-radio-group disabled v-model="ruleForm.diyaqList[0].dyfs">
<el-radio-group disabled v-model="ruleForm.diyaq.dyfs">
<el-radio label="1">一般抵押</el-radio>
<el-radio label="2">最高额抵押</el-radio>
</el-radio-group>
......@@ -84,7 +85,7 @@
<el-col :span="8">
<el-form-item label="抵押金额类型:">
<el-radio-group
v-model="ruleForm.diyaqList[0].dyjelx"
v-model="ruleForm.diyaq.dyjelx"
:disabled="!viewEdit || ruleForm.slsq.djywbm.includes('400')">
<el-radio label="0">独立抵押</el-radio>
<el-radio label="1">整体抵押</el-radio>
......@@ -93,13 +94,13 @@
</el-col>
<el-col :span="8">
<el-form-item
label="是否存在禁止或者限制转让抵押不动产的约定:"
label-width="300px">
label="是否禁止或者限制转让的约定:"
label-width="200px">
<el-radio-group
v-model="ruleForm.diyaqList[0].sfczjzhxz"
v-model="ruleForm.diyaq.sfczjzhxz"
:disabled="!viewEdit || ruleForm.slsq.djywbm.includes('400')">
<el-radio label="1">启用</el-radio>
<el-radio label="0">禁用</el-radio>
<el-radio label="1"></el-radio>
<el-radio label="0"></el-radio>
</el-radio-group>
</el-form-item>
</el-col>
......@@ -107,15 +108,15 @@
<el-row
:gutter="10"
v-if="ruleForm.diyaqList && ruleForm.diyaqList.length > 0 && !ruleForm.slsq.djywbm.includes('400')">
<el-col :span="8" v-show="ruleForm.diyaqList[0].dyfs == 1">
<el-form-item label="被担保主债权数额:">
<el-col :span="8" v-show="ruleForm.diyaq.dyfs == 1">
<el-form-item label="被担保主债权数额:" prop="diyaq.bdbzzqse">
<div style="display: flex">
<el-input
v-model="ruleForm.diyaqList[0].bdbzzqse"
v-model="ruleForm.diyaq.bdbzzqse"
:disabled="!viewEdit || ruleForm.slsq.djywbm.includes('400')"></el-input>
<el-select
style="width: 68px"
v-model="ruleForm.diyaqList[0].jedw"
v-model="ruleForm.diyaq.jedw"
:disabled="!viewEdit || ruleForm.slsq.djywbm.includes('400')">
<el-option
v-for="item in dictData['A57']"
......@@ -128,13 +129,13 @@
</el-form-item>
</el-col>
<el-col :span="8" v-show="ruleForm.diyaqList[0].dyfs == 2">
<el-form-item label="最高债权额:">
<el-col :span="8" v-show="ruleForm.diyaq.dyfs == 2">
<el-form-item label="最高债权额:" prop="diyaq.zgzqse">
<el-input
v-model="ruleForm.diyaqList[0].zgzqse"
v-model="ruleForm.diyaq.zgzqse"
:disabled="!viewEdit || ruleForm.slsq.djywbm.includes('400')"></el-input>
<el-select
v-model="ruleForm.diyaqList[0].jedw"
v-model="ruleForm.diyaq.jedw"
:disabled="!viewEdit || ruleForm.slsq.djywbm.includes('400')">
<el-option
v-for="item in dictData['A57']"
......@@ -147,18 +148,18 @@
</el-col>
<el-col :span="8">
<el-form-item label="债务履行起始时间:">
<el-form-item label="债务履行起始时间:" prop="diyaq.zwlxqssj">
<el-date-picker
v-model="ruleForm.diyaqList[0].zwlxqssj"
v-model="ruleForm.diyaq.zwlxqssj"
:disabled="!viewEdit || ruleForm.slsq.djywbm.includes('400')"
type="date">
</el-date-picker>
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item label="债务履行结束时间:">
<el-form-item label="债务履行结束时间:" prop="diyaq.zwlxjssj">
<el-date-picker
v-model="ruleForm.diyaqList[0].zwlxjssj"
v-model="ruleForm.diyaq.zwlxjssj"
:disabled="!viewEdit || ruleForm.slsq.djywbm.includes('400')"
type="date">
</el-date-picker>
......@@ -169,7 +170,7 @@
<el-col :span="24">
<el-form-item label="担保范围:">
<el-input
v-model="ruleForm.diyaqList[0].dbfw"
v-model="ruleForm.diyaq.dbfw"
:disabled="!viewEdit || ruleForm.slsq.djywbm.includes('400')"></el-input>
</el-form-item>
</el-col>
......@@ -178,7 +179,7 @@
<el-col :span="24">
<el-form-item label="最高债权确定事实和数额:">
<el-input
v-model="ruleForm.diyaqList[0].zgzqqdss"
v-model="ruleForm.diyaq.zgzqqdss"
:disabled="!viewEdit || ruleForm.slsq.djywbm.includes('400')"></el-input>
</el-form-item>
</el-col>
......@@ -190,7 +191,7 @@
type="textarea"
maxlength="500"
show-word-limit
v-model="ruleForm.diyaqList[0].fj"
v-model="ruleForm.diyaq.fj"
:disabled="!viewEdit || ruleForm.slsq.djywbm.includes('400')"></el-input>
</el-form-item>
</el-col>
......@@ -278,17 +279,17 @@
class="textArea"
type="textarea"
:disabled="!viewEdit"
v-model="ruleForm.diyaqList[0].zxdyyy">
v-model="ruleForm.diyaq.zxdyyy">
</el-input>
</el-form-item>
<el-form-item v-else label="登记原因:" prop="diyaqList[0].djyy">
<el-form-item v-else label="登记原因:" prop="diyaq.djyy">
<el-input
class="textArea"
type="textarea"
maxlength="500"
show-word-limit
:disabled="!viewEdit"
v-model="ruleForm.diyaqList[0].djyy">
v-model="ruleForm.diyaq.djyy">
</el-input>
</el-form-item>
</el-col>
......@@ -307,6 +308,7 @@
import dyaqTable from "../commonTable/dyaqTable";
import qlrCommonTable from "@/views/workflow/components/qlrCommonTable";
import { batchInit, saveBatchData } from "@/api/workflow/diyaqFlow.js";
import { formValidate } from "./slxxValidate";
import { mapGetters } from "vuex";
export default {
mounted () {
......@@ -332,7 +334,11 @@
}
})
that.czrOptions = that.ruleForm.qlrList;
that.isSave = that.viewEdit
that.isSave = that.viewEdit;
that.rules = formValidate(
that.ruleForm.sldyList[0].djlx,
that.ruleForm.diyaq.dyfs
);
} else {
that.isSave = false
that.$confirm(res.message, '提示', {
......@@ -361,11 +367,7 @@
ruleForm: {},
//传递参数
propsParam: {},
rules: {
'diyaqList[0].djyy': [
{ required: true, message: '请输入登记原因', trigger: 'blur' }
]
},
rules: {},
tableData: [],
};
},
......@@ -450,7 +452,7 @@
} else {
that.$message({
showClose: true,
message: "请输入登记原因",
message: "请输入红框内的相关信息!",
type: "error"
})
return false
......
......@@ -126,7 +126,8 @@
<el-row :gutter="10">
<el-col :span="8">
<el-form-item label="原不动产证号:">
<el-input disabled v-model="ruleForm.sldy.ybdcqzsh"></el-input>
<el-input v-if="ruleForm.sldy.djlx=='100'" disabled ></el-input>
<el-input v-else disabled v-model="ruleForm.sldy.ybdcqzsh"></el-input>
</el-form-item>
</el-col>
<el-col :span="8">
......
......@@ -119,7 +119,7 @@
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item label="取得价格:">
<el-form-item label="取得价格:" prop="jsydsyq.qdjg">
<div style="display: flex">
<el-input
maxlength="11"
......
......@@ -75,8 +75,8 @@
</el-form-item>
</el-col>
<el-col :span="16">
<el-form-item label="坐落:">
<el-input disabled v-model="ruleForm.sldy.zl"></el-input>
<el-form-item label="坐落:" prop="sldy.zl">
<el-input v-model="ruleForm.sldy.zl"></el-input>
</el-form-item>
</el-col>
</el-row>
......@@ -92,7 +92,7 @@
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item label="使用权(承包)面积:">
<el-form-item label="使用权(承包)面积:" prop="lq.syqmj">
<el-input v-model="ruleForm.lq.syqmj" :disabled="!viewEdit"></el-input>
</el-form-item>
</el-col>
......@@ -291,7 +291,7 @@
</div>
<el-row :gutter="10">
<el-col>
<el-form-item v-if="ruleForm.sldy" label="登记原因:" prop="lq.djyy">
<el-form-item label="登记原因:" prop="lq.djyy">
<el-input
class="textArea"
type="textarea"
......@@ -348,7 +348,8 @@
})
that.czrOptions = that.ruleForm.qlrList;
that.ruleForm.lq.zlnd ? that.$set(that.ruleForm.lq, 'zlnd', that.ruleForm.lq.zlnd.toString()) : that.$set(that.ruleForm.lq, 'zlnd', "")
that.isSave = that.viewEdit
that.isSave = that.viewEdit;
this.rules = formValidate(this.ruleForm.sldy.djlx);
} else {
that.isSave = false
that.$confirm(res.message, '提示', {
......@@ -399,11 +400,7 @@
propsParam: this.$attrs,
//表单是否可操作
viewEdit: true,
rules: {
'lq.djyy': [
{ required: true, message: '请输入登记原因', trigger: 'blur' }
]
}
rules: {}
};
},
methods: {
......@@ -530,7 +527,7 @@
} else {
this.$message({
showClose: true,
message: "请输入登记原因",
message: "请输入红框内的相关信息!",
type: "error"
})
return false
......
......@@ -4,22 +4,19 @@
* @author: renchao
*/
export function formValidate (djlx) {
switch (djlx) {
case "100":
return fristValidate();
case "200":
return transferValidate();
case "300":
return changeValidate();
case "400":
return logoutValidate();
case "500":
return riviseValidate();
case "901":
return renewalValidate();
case "902":
return replaceValidate();
}
var formRules={
'sldy.zl': [
{ required: true, message: '坐落:', trigger: 'blur' }
],
'lq.syqmj': [
{ required: true, message: '使用权(承包)面积:', trigger: 'blur' }
],
'lq.djyy': [
{ required: true, message: '登记原因:', trigger: 'blur' }
]
}
return formRules;
}
/**
......@@ -27,13 +24,7 @@ export function formValidate (djlx) {
* @param {*} data
* @author: renchao
*/
export function fristValidate () {
var formRules={
'diyaq.djyy': [
{ required: true, message: '请输入登记原因', trigger: 'blur' }
]
}
return formRules;
export function fristValidate () {
}
......
......@@ -86,7 +86,7 @@
</el-row>
<el-row :gutter="10">
<el-col :span="8">
<el-form-item label="宗地面积:">
<el-form-item label="宗地面积:" prop="zdjbxx.zdmj">
<el-input disabled v-model="ruleForm.zdjbxx.zdmj"></el-input>
</el-form-item>
</el-col>
......@@ -103,7 +103,7 @@
</el-row>
<el-row :gutter="10">
<el-col :span="16">
<el-form-item label="坐落:">
<el-form-item label="坐落:" prop="sldy.zl">
<el-input disabled v-model="ruleForm.sldy.zl"></el-input>
</el-form-item>
</el-col>
......@@ -359,7 +359,8 @@
}
})
that.czrOptions = that.ruleForm.qlrList;
that.isSave = that.viewEdit
that.isSave = that.viewEdit;
this.rules = formValidate(this.ruleForm.sldy.djlx);
} else {
that.isSave = false
that.$confirm(res.message, '提示', {
......@@ -405,11 +406,7 @@
propsParam: {},
//表单是否可操作
viewEdit: true,
rules: {
'nydsyq.djyy': [
{ required: true, message: '请输入登记原因', trigger: 'blur' }
]
},
rules: {},
};
},
methods: {
......@@ -494,7 +491,7 @@
} else {
this.$message({
showClose: true,
message: "请输入登记原因",
message: "请输入红框内的相关信息!",
type: "error"
})
return false
......
......@@ -4,22 +4,19 @@
* @author: renchao
*/
export function formValidate (djlx) {
switch (djlx) {
case "100":
return fristValidate();
case "200":
return transferValidate();
case "300":
return changeValidate();
case "400":
return logoutValidate();
case "500":
return riviseValidate();
case "901":
return renewalValidate();
case "902":
return replaceValidate();
}
var formRules={
'sldy.zl': [
{ required: true, message: '坐落:', trigger: 'blur' }
],
'zdjbxx.zdmj': [
{ required: true, message: '宗地面积:', trigger: 'blur' }
],
'nydsyq.djyy': [
{ required: true, message: '登记原因:', trigger: 'blur' }
]
}
return formRules;
}
/**
......@@ -27,13 +24,7 @@ export function formValidate (djlx) {
* @param {*} data
* @author: renchao
*/
export function fristValidate () {
var formRules={
'diyaq.djyy': [
{ required: true, message: '请输入登记原因', trigger: 'blur' }
]
}
return formRules;
export function fristValidate () {
}
......
......@@ -12,7 +12,8 @@
v-Loading="loading"
:label-position="flag ? 'top' : ''"
:inline="flag"
label-width="190px">
label-width="190px"
>
<div class="slxx_con" :class="flag ? 'formMarginBot0' : ''">
<div class="slxx_title title-block">
申请业务信息
......@@ -54,11 +55,9 @@
</el-row>
<div class="slxx_title title-block">
<el-row>
<el-col :span="20">
不动产单元情况
</el-col>
<el-col :span="4" v-if="ruleForm.sldy.djlx=='500'">
<el-form-item label="是否创建证书:" style="height:24px">
<el-col :span="20"> 不动产单元情况 </el-col>
<el-col :span="4" v-if="ruleForm.sldy.djlx == '500'">
<el-form-item label="是否创建证书:" style="height: 24px">
<el-radio-group v-model="ruleForm.sldy.sfxysczs">
<el-radio label="1"></el-radio>
<el-radio label="0"></el-radio>
......@@ -75,7 +74,7 @@
</el-form-item>
</el-col>
<el-col :span="16">
<el-form-item label="坐落:">
<el-form-item label="坐落:" prop="sldy.zl">
<el-input disabled v-model="ruleForm.sldy.zl"></el-input>
</el-form-item>
</el-col>
......@@ -83,17 +82,27 @@
<el-row :gutter="10">
<el-col :span="8">
<el-form-item label="发包方:">
<el-input v-model="ruleForm.lq.fbf" :disabled="!viewEdit"></el-input>
<el-input
v-model="ruleForm.lq.fbf"
:disabled="!viewEdit"
></el-input>
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item label="发包方代码:">
<el-input v-model="ruleForm.lq.fbfdm" :disabled="!viewEdit"></el-input>
<el-input
v-model="ruleForm.lq.fbfdm"
:disabled="!viewEdit"
></el-input>
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item label="使用权(承包)面积:">
<el-input maxlength="12" v-model="ruleForm.lq.syqmj" :disabled="!viewEdit"></el-input>
<el-form-item label="使用权(承包)面积:" prop="lq.syqmj">
<el-input
maxlength="12"
v-model="ruleForm.lq.syqmj"
:disabled="!viewEdit"
></el-input>
</el-form-item>
</el-col>
</el-row>
......@@ -105,26 +114,36 @@
v-for="item in dictData['A45']"
:key="item.dcode"
:label="item.dname"
:value="item.dcode">
:value="item.dcode"
>
</el-option>
</el-select>
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item label="森林类别:">
<el-input v-model="ruleForm.lq.sllb" :disabled="!viewEdit"></el-input>
<el-input
v-model="ruleForm.lq.sllb"
:disabled="!viewEdit"
></el-input>
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item label="主要树种:">
<el-input v-model="ruleForm.lq.zysz" :disabled="!viewEdit"></el-input>
<el-input
v-model="ruleForm.lq.zysz"
:disabled="!viewEdit"
></el-input>
</el-form-item>
</el-col>
</el-row>
<el-row :gutter="10">
<el-col :span="8">
<el-form-item label="株数:">
<el-input v-model="ruleForm.lq.zs" :disabled="!viewEdit"></el-input>
<el-input
v-model="ruleForm.lq.zs"
:disabled="!viewEdit"
></el-input>
</el-form-item>
</el-col>
<el-col :span="8">
......@@ -134,7 +153,8 @@
v-for="item in dictData['A26']"
:key="item.dcode"
:label="item.dname"
:value="item.dcode">
:value="item.dcode"
>
</el-option>
</el-select>
</el-form-item>
......@@ -146,7 +166,8 @@
v-for="item in dictData['A52']"
:key="item.dcode"
:label="item.dname"
:value="item.dcode">
:value="item.dcode"
>
</el-option>
</el-select>
</el-form-item>
......@@ -161,25 +182,35 @@
value-format="yyyy"
v-model="ruleForm.lq.zlnd"
:disabled="!viewEdit"
type="year">
type="year"
>
</el-date-picker>
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item label="林班:">
<el-input v-model="ruleForm.lq.lb" :disabled="!viewEdit"></el-input>
<el-input
v-model="ruleForm.lq.lb"
:disabled="!viewEdit"
></el-input>
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item label="小班:">
<el-input v-model="ruleForm.lq.xb" :disabled="!viewEdit"></el-input>
<el-input
v-model="ruleForm.lq.xb"
:disabled="!viewEdit"
></el-input>
</el-form-item>
</el-col>
</el-row>
<el-row :gutter="10">
<el-col :span="8">
<el-form-item label="小地名:">
<el-input v-model="ruleForm.lq.xdm" :disabled="!viewEdit"></el-input>
<el-input
v-model="ruleForm.lq.xdm"
:disabled="!viewEdit"
></el-input>
</el-form-item>
</el-col>
<el-col :span="8">
......@@ -189,7 +220,8 @@
value-format="yyyy-MM-dd HH:mm:ss"
v-model="ruleForm.lq.ldsyqssj"
:disabled="!viewEdit"
type="date"></el-date-picker>
type="date"
></el-date-picker>
</el-form-item>
</el-col>
<el-col :span="8">
......@@ -199,7 +231,8 @@
value-format="yyyy-MM-dd HH:mm:ss"
v-model="ruleForm.lq.ldsyjssj"
:disabled="!viewEdit"
type="date"></el-date-picker>
type="date"
></el-date-picker>
</el-form-item>
</el-col>
</el-row>
......@@ -211,7 +244,10 @@
</el-col> -->
<el-col :span="8">
<el-form-item label="林地使用 (承包)期限:">
<el-input v-model="ruleForm.lq.ldsyqx" :disabled="!viewEdit"></el-input>
<el-input
v-model="ruleForm.lq.ldsyqx"
:disabled="!viewEdit"
></el-input>
</el-form-item>
</el-col>
</el-row>
......@@ -223,7 +259,8 @@
:disabled="!viewEdit"
type="textarea"
maxlength="500"
show-word-limit></el-input>
show-word-limit
></el-input>
</el-form-item>
</el-col>
</el-row>
......@@ -244,7 +281,8 @@
<el-form-item label="共有方式:">
<el-radio-group
:disabled="!viewEdit"
v-model="ruleForm.sldy.gyfs">
v-model="ruleForm.sldy.gyfs"
>
<el-radio label="0">单独所有</el-radio>
<el-radio label="1">共同共有</el-radio>
<el-radio label="2">按份所有</el-radio>
......@@ -257,7 +295,8 @@
<el-radio-group
v-model="ruleForm.sldy.sqfbcz"
:disabled="!viewEdit"
@input="updaterow()">
@input="updaterow()"
>
<el-radio :label="1"></el-radio>
<el-radio :label="0"></el-radio>
</el-radio-group>
......@@ -265,17 +304,20 @@
</el-col>
<el-col
:span="6"
v-show="ruleForm.sldy.sqfbcz == '0' && ruleForm.sldy.gyfs != '0'">
v-show="ruleForm.sldy.sqfbcz == '0' && ruleForm.sldy.gyfs != '0'"
>
<el-form-item label="持证人:">
<el-select
v-model="czr"
placeholder="持证人"
:disabled="!viewEdit">
:disabled="!viewEdit"
>
<el-option
v-for="(item, index) in czrOptions"
:key="index"
:label="item.sqrmc"
:value="item.id">
:value="item.id"
>
</el-option>
</el-select>
</el-form-item>
......@@ -285,7 +327,8 @@
@upDateQlrxxList="upDateQlrxxList"
:tableData="ruleForm.qlrList"
:disabled="viewEdit"
:gyfs="ruleForm.sldy.gyfs" />
:gyfs="ruleForm.sldy.gyfs"
/>
<div v-if="ruleForm.ywrList && ruleForm.sldy.djlx == '200'">
<div class="slxx_title title-block">
......@@ -297,7 +340,8 @@
:disabled="viewEdit"
@upDateQlrxxList="upDateYwrxxList"
:tableData="ruleForm.ywrList"
:gyfs="ruleForm.sldy.gyfs" />
:gyfs="ruleForm.sldy.gyfs"
/>
</div>
<div class="slxx_title title-block">
登记原因
......@@ -305,14 +349,15 @@
</div>
<el-row :gutter="10">
<el-col>
<el-form-item v-if="ruleForm.sldy" label="登记原因:" prop="djyy">
<el-form-item label="登记原因:" prop="lq.djyy">
<el-input
class="textArea"
type="textarea"
maxlength="500"
show-word-limit
:disabled="!viewEdit"
v-model="ruleForm.lq.djyy">
v-model="ruleForm.lq.djyy"
>
</el-input>
</el-form-item>
</el-col>
......@@ -327,282 +372,297 @@
</div>
</template>
<script>
import ywmix from "@/views/ywbl/mixin/index";
import qlrCommonTable from "@/views/workflow/components/qlrCommonTable";
import ywrCommonTable from "@/views/workflow/components/ywrCommonTable";
import tdytTable from "@/views/workflow/components/tdytTable";
import { Init, saveData } from "@/api/workflow/sllmFlow.js";
import { mapGetters } from "vuex";
import { formValidate } from "./slxxValidate";
export default {
mixins: [ywmix],
mounted () {
let that = this
this.viewEdit = this.$parent.currentSelectTab.ableOperation;
this.propsParam = this.$attrs;
var formdata = new FormData();
this.loading = true
formdata.append("bsmSldy", this.propsParam.bsmSldy);
formdata.append("djlx", this.propsParam.djlx);
formdata.append("isEdit", this.viewEdit);
Init(formdata).then((res) => {
import ywmix from "@/views/ywbl/mixin/index";
import qlrCommonTable from "@/views/workflow/components/qlrCommonTable";
import ywrCommonTable from "@/views/workflow/components/ywrCommonTable";
import tdytTable from "@/views/workflow/components/tdytTable";
import { Init, saveData } from "@/api/workflow/sllmFlow.js";
import { mapGetters } from "vuex";
import { formValidate } from "./slxxValidate";
export default {
mixins: [ywmix],
mounted() {
let that = this;
this.viewEdit = this.$parent.currentSelectTab.ableOperation;
this.propsParam = this.$attrs;
var formdata = new FormData();
this.loading = true;
formdata.append("bsmSldy", this.propsParam.bsmSldy);
formdata.append("djlx", this.propsParam.djlx);
formdata.append("isEdit", this.viewEdit);
Init(formdata)
.then((res) => {
setTimeout(() => {
this.loading = false
}, 200)
this.loading = false;
}, 200);
if (res.code === 200 && res.result) {
this.ruleForm = {
...res.result,
...res.result.qlxxdatas,
};
this.ruleForm.qlrList.forEach((item) => {
item.id = item.bsmSqr
if (item.sfczr == '1') {
that.czr = item.bsmSqr
item.id = item.bsmSqr;
if (item.sfczr == "1") {
that.czr = item.bsmSqr;
}
})
that.czrOptions = that.ruleForm.qlrList
that.isSave = that.viewEdit
});
that.czrOptions = that.ruleForm.qlrList;
that.isSave = that.viewEdit;
this.rules = formValidate(this.ruleForm.sldy.djlx);
} else {
that.isSave = false
that.$confirm(res.message, '提示', {
cancelButtonText: '取消',
that.isSave = false;
that.$confirm(res.message, "提示", {
cancelButtonText: "取消",
showConfirmButton: false,
type: 'warning'
})
type: "warning",
});
}
}).catch(() => {
this.loading = false
this.isSave = false
})
},
components: { qlrCommonTable, tdytTable, ywrCommonTable },
computed: {
...mapGetters(["dictData", "flag"]),
},
data () {
return {
isSave: true,
loading: false,
disabled: true,
tdytOption: [],
czrOptions: [],
czr: "",
ruleForm: {
lq: {
zlnd: "",
ldsyqssj: "",
ldsyjssj: ""
},
flow: {
ywh: "",
},
qlxx: {
mj: "",
},
sldy: {
gyfs: "",
},
slsq: {},
fdcq2: {
zyjzmj: "",
ftjzmj: "",
},
zdjbxx: {
ghytmc: "",
},
.catch(() => {
this.loading = false;
this.isSave = false;
});
},
components: { qlrCommonTable, tdytTable, ywrCommonTable },
computed: {
...mapGetters(["dictData", "flag"]),
},
data() {
return {
isSave: true,
loading: false,
disabled: true,
tdytOption: [],
czrOptions: [],
czr: "",
ruleForm: {
lq: {
zlnd: "",
ldsyqssj: "",
ldsyjssj: "",
},
flow: {
ywh: "",
},
qlxx: {
mj: "",
},
sldy: {
gyfs: "",
},
slsq: {},
fdcq2: {
zyjzmj: "",
ftjzmj: "",
},
zdjbxx: {
ghytmc: "",
},
//传递参数
propsParam: this.$attrs,
//表单是否可操作
viewEdit: true,
rules: {},
};
},
methods: {
/**
* @description: 更新土地用途信息
* @param {*} val
* @author: renchao
*/
upDateTdytxxList (val) {
this.ruleForm.tdytqxList && (this.ruleForm.tdytqxList = _.cloneDeep(val));
},
/**
* @description: 更新权利人信息
* @param {*} val
* @author: renchao
*/
upDateQlrxxList (val) {
if (!_.isEqual(val, this.ruleForm.qlrList)) {
this.ruleForm.qlrList = _.cloneDeep(val);
this.czrOptions = this.ruleForm.qlrList;
}
this.num = 0
this.ruleForm.qlrList.forEach(item => {
if (item.id == this.czr) {
this.num++
}
})
if (this.num == 0) {
this.czr = ''
//传递参数
propsParam: this.$attrs,
//表单是否可操作
viewEdit: true,
rules: {},
};
},
methods: {
/**
* @description: 更新土地用途信息
* @param {*} val
* @author: renchao
*/
upDateTdytxxList(val) {
this.ruleForm.tdytqxList && (this.ruleForm.tdytqxList = _.cloneDeep(val));
},
/**
* @description: 更新权利人信息
* @param {*} val
* @author: renchao
*/
upDateQlrxxList(val) {
if (!_.isEqual(val, this.ruleForm.qlrList)) {
this.ruleForm.qlrList = _.cloneDeep(val);
this.czrOptions = this.ruleForm.qlrList;
}
this.num = 0;
this.ruleForm.qlrList.forEach((item) => {
if (item.id == this.czr) {
this.num++;
}
},
/**
* @description: 是否持证人变化
* @param {*} val
* @author: renchao
*/
updaterow () {
});
if (this.num == 0) {
this.czr = "";
},
/**
* @description: 更新业务人信息
* @param {*} val
* @author: renchao
*/
upDateYwrxxList (val) {
this.ruleForm.ywrList = _.cloneDeep(val);
},
/**
* @description: onSubmit
* @author: renchao
*/
onSubmit () {
let that = this;
if (this.ruleForm.qlrList.length == 0) {
}
},
/**
* @description: 是否持证人变化
* @param {*} val
* @author: renchao
*/
updaterow() {
this.czr = "";
},
/**
* @description: 更新业务人信息
* @param {*} val
* @author: renchao
*/
upDateYwrxxList(val) {
this.ruleForm.ywrList = _.cloneDeep(val);
},
/**
* @description: onSubmit
* @author: renchao
*/
onSubmit() {
let that = this;
if (this.ruleForm.qlrList.length == 0) {
this.$message({
showClose: true,
message: "请确认权利人信息",
type: "error",
});
return false;
}
if (this.ruleForm.sldy.gyfs == "0") {
if (this.ruleForm.qlrList.length > 1) {
this.$message({
showClose: true,
message: "请确认权利人信息",
message: "共有方式:单独所有,权利人只能是一个人",
type: "error",
});
return false;
}
if (this.ruleForm.sldy.gyfs == "0") {
if (this.ruleForm.qlrList.length > 1) {
this.$message({
showClose: true,
message: "共有方式:单独所有,权利人只能是一个人",
type: "error",
});
return false;
}
this.ruleForm.qlrList[0].sfczr = "1";
this.ruleForm.qlrList[0].sfczr = "1";
} else {
if (this.ruleForm.qlrList.length <= 1) {
this.$message({
showClose: true,
message:
"共有方式:共同所有,按份所有,其他所有,权利人必须是两个以上",
type: "error",
});
return false;
}
//是否分别持证
if (this.ruleForm.sldy.sqfbcz == "1") {
//是
this.ruleForm.qlrList.forEach((item) => {
item.sfczr = "1";
});
} else {
if (this.ruleForm.qlrList.length <= 1) {
this.$message({
if (that.czr === "") {
that.$message({
showClose: true,
message:
"共有方式:共同所有,按份所有,其他所有,权利人必须是两个以上",
message: "请选择持证人",
type: "error",
});
return false;
}
//是否分别持证
if (this.ruleForm.sldy.sqfbcz == "1") {
//是
this.ruleForm.qlrList.forEach(item => {
this.ruleForm.qlrList.forEach((item) => {
if (item.id == that.czr) {
item.sfczr = "1";
});
} else {
if (that.czr === '') {
that.$message({
} else {
item.sfczr = "0";
}
});
}
}
this.$refs["ruleForm"].validate((valid) => {
if (valid) {
that.$store.dispatch("user/refreshPage", false);
saveData(this.ruleForm).then((res) => {
if (res.code === 200) {
this.$message({
showClose: true,
message: "保存成功!",
type: "success",
});
this.$store.dispatch("user/refreshPage", true);
} else {
this.$message({
showClose: true,
message: "请选择持证人",
message: res.message,
type: "error",
});
return false;
}
this.ruleForm.qlrList.forEach(item => {
if (item.id == that.czr) {
item.sfczr = "1";
} else {
item.sfczr = "0";
}
});
}
});
} else {
that.$message({
showClose: true,
message: "请输入红框内的相关信息!",
type: "error",
});
return false;
}
saveData(this.ruleForm).then((res) => {
if (res.code === 200) {
this.$message({
showClose: true,
message: "保存成功!",
type: "success",
});
this.$store.dispatch("user/refreshPage", true);
} 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: 3px;
}
/deep/.el-form-item {
margin-bottom: 3px;
}
.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;
}
.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>
......
......@@ -4,22 +4,19 @@
* @author: renchao
*/
export function formValidate (djlx) {
switch (djlx) {
case "100":
return fristValidate();
case "200":
return transferValidate();
case "300":
return changeValidate();
case "400":
return logoutValidate();
case "500":
return riviseValidate();
case "901":
return renewalValidate();
case "902":
return replaceValidate();
}
var formRules={
'sldy.zl': [
{ required: true, message: '坐落:', trigger: 'blur' }
],
'lq.syqmj': [
{ required: true, message: '使用权(承包)面积:', trigger: 'blur' }
],
'lq.djyy': [
{ required: true, message: '登记原因:', trigger: 'blur' }
]
}
return formRules;
}
/**
......@@ -27,13 +24,7 @@ export function formValidate (djlx) {
* @param {*} data
* @author: renchao
*/
export function fristValidate () {
var formRules={
'diyaq.djyy': [
{ required: true, message: '请输入登记原因', trigger: 'blur' }
]
}
return formRules;
export function fristValidate () {
}
......
......@@ -85,7 +85,7 @@
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item label="权利性质:">
<el-form-item label="权利性质:" prop="zdjbxx.qlxz">
<treeselect
v-model="ruleForm.zdjbxx.qlxz"
noOptionsText="暂无数据"
......@@ -183,7 +183,7 @@
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item label="确权面积:">
<el-form-item label="确权面积:" prop="tdcbjyq.qqmj">
<div class="flex">
<el-input
:disabled="!viewEdit"
......@@ -378,7 +378,8 @@
}
})
that.czrOptions = that.ruleForm.qlrList;
that.isSave = that.viewEdit
that.isSave = that.viewEdit;
this.rules = formValidate(this.ruleForm.sldy.djlx);
} else {
that.isSave = false
that.$confirm(res.message, '提示', {
......@@ -449,11 +450,7 @@
ruleForm: {},
//传递参数
propsParam: {},
rules: {
'tdcbjyq.djyy': [
{ required: true, message: '请输入登记原因', trigger: 'blur' }
]
}
rules: {}
}
},
methods: {
......@@ -592,7 +589,7 @@
} else {
that.$message({
showClose: true,
message: "请输入登记原因",
message: "请输入红框内的相关信息!",
type: "error"
})
return false
......
......@@ -4,22 +4,22 @@
* @author: renchao
*/
export function formValidate (djlx) {
switch (djlx) {
case "100":
return fristValidate();
case "200":
return transferValidate();
case "300":
return changeValidate();
case "400":
return logoutValidate();
case "500":
return riviseValidate();
case "901":
return renewalValidate();
case "902":
return replaceValidate();
}
var formRules={
'sldy.zl': [
{ required: true, message: '坐落:', trigger: 'blur' }
],
'zdjbxx.qlxz': [
{ required: true, message: '权利性质:', trigger: 'blur' }
],
'tdcbjyq.qqmj': [
{ required: true, message: '确权面积:', trigger: 'blur' }
],
'lq.djyy': [
{ required: true, message: '登记原因:', trigger: 'blur' }
]
}
return formRules;
}
/**
......@@ -27,13 +27,7 @@ export function formValidate (djlx) {
* @param {*} data
* @author: renchao
*/
export function fristValidate () {
var formRules={
'diyaq.djyy': [
{ required: true, message: '请输入登记原因', trigger: 'blur' }
]
}
return formRules;
export function fristValidate () {
}
......
......@@ -71,8 +71,8 @@
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item label="坐落:">
<el-input disabled v-model="ruleForm.sldy.zl"></el-input>
<el-form-item label="坐落:" prop="sldy.zl">
<el-input v-model="ruleForm.sldy.zl"></el-input>
</el-form-item>
</el-col>
</el-row>
......@@ -88,7 +88,7 @@
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item label="房屋性质:">
<el-form-item label="房屋性质:" prop="ygdj.fwxz">
<el-select v-model="ruleForm.ygdj.fwxz" :disabled="!viewEdit">
<el-option
v-for="item in dictData['A19']"
......@@ -102,7 +102,7 @@
</el-row>
<el-row :gutter="10" v-if="ruleForm.qlxx">
<el-col :span="8">
<el-form-item label="房屋用途:">
<el-form-item label="房屋用途:" prop="ygdj.ghyt">
<el-select v-model="ruleForm.ygdj.ghyt" :disabled="!viewEdit">
<el-option
v-for="item in dictData['A17']"
......@@ -114,12 +114,12 @@
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item label="所在层:">
<el-form-item label="所在层:" prop="ygdj.szc">
<el-input maxlength="20" :disabled="!viewEdit" v-model="ruleForm.ygdj.szc"></el-input>
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item label="总层数:">
<el-form-item label="总层数:" prop="ygdj.zcs">
<el-input
:disabled="!viewEdit"
maxlength="4"
......@@ -130,7 +130,7 @@
</el-row>
<el-row :gutter="10" v-if="ruleForm.qlxx">
<el-col :span="8">
<el-form-item label="房屋结构:">
<el-form-item label="房屋结构:" prop="ygdj.fwjg">
<el-select v-model="ruleForm.ygdj.fwjg" :disabled="!viewEdit">
<el-option
v-for="item in dictData['A46']"
......@@ -143,7 +143,7 @@
</el-col>
<el-col :span="8">
<el-form-item label="建筑面积:">
<el-form-item label="建筑面积:" prop="ygdj.jzmj">
<div class="flex">
<el-input
maxlength="12"
......@@ -262,7 +262,7 @@
</div>
<el-row :gutter="10">
<el-col>
<el-form-item v-if="ruleForm.sldy.djlx=='400'" label="注销登记原因:" prop="djyy">
<el-form-item v-if="ruleForm.sldy.djlx=='400'" label="注销登记原因:" prop="ygdj.zxyy">
<el-input
class="textArea"
type="textarea"
......@@ -324,7 +324,8 @@
}
})
that.czrOptions = this.ruleForm.qlrList
that.isSave = that.viewEdit
that.isSave = that.viewEdit;
this.rules = formValidate(this.ruleForm.sldy.djlx);
} else {
that.isSave = false
that.$confirm(res.message, '提示', {
......@@ -362,11 +363,7 @@
},
//传递参数
propsParam: this.$attrs,
rules: {
'ygdj.djyy': [
{ required: true, message: '请输入登记原因', trigger: 'blur' }
]
}
rules: {}
}
},
methods: {
......@@ -500,7 +497,7 @@
} else {
that.$message({
showClose: true,
message: "请输入登记原因",
message: "请输入红框内的相关信息!",
type: "error"
})
return false
......
......@@ -4,89 +4,111 @@
* @author: renchao
*/
export function formValidate (djlx) {
switch (djlx) {
case "100":
return fristValidate();
case "200":
return transferValidate();
case "300":
return changeValidate();
case "400":
return logoutValidate();
case "500":
return riviseValidate();
case "901":
return renewalValidate();
case "902":
return replaceValidate();
}
}
/**
* @description: 首次登记效验
* @param {*} data
* @author: renchao
*/
export function fristValidate () {
var formRules={
'diyaq.djyy': [
{ required: true, message: '请输入登记原因', trigger: 'blur' }
]
var formRules={
'sldy.zl': [
{ required: false, message: '坐落:', trigger: 'blur' }
],
'ygdj.fwxz': [
{ required: false, message: '房屋性质:', trigger: 'blur' }
],
'ygdj.ghyt': [
{ required: false, message: '房屋用途:', trigger: 'blur' }
],
'ygdj.szc': [
{ required: false, message: '所在层:', trigger: 'blur' }
],
'ygdj.zcs': [
{ required: false, message: '总层数:', trigger: 'blur' }
],
'ygdj.fwjg': [
{ required: false, message: '房屋结构:', trigger: 'blur' }
],
'ygdj.jzmj': [
{ required: false, message: '建筑面积:', trigger: 'blur' }
],
'ygdj.djyy': [
{ required: false, message: '请输入登记原因', trigger: 'blur' }
],
'ygdj.zxyy': [
{ required: false, message: '请输入注销登记原因', trigger: 'blur' }
]
}
if (djlx=="400") {
formRules["ygdj.zxyy"][0].required=true;
}else{
formRules["sldy.zl"][0].required=true;
formRules["ygdj.fwxz"][0].required=true;
formRules["ygdj.ghyt"][0].required=true;
formRules["ygdj.szc"][0].required=true;
formRules["ygdj.zcs"][0].required=true;
formRules["ygdj.fwjg"][0].required=true;
formRules["ygdj.jzmj"][0].required=true;
formRules["ygdj.djyy"][0].required=true;
}
return formRules;
}
return formRules;
}
/**
* @description: 转移登记效验
* @param {*} data
* @author: renchao
*/
export function transferValidate (data) {
}
/**
* @description: 变更登记效验
* @param {*} data
* @author: renchao
*/
export function changeValidate (data) {
}
/**
* @description: 注销登记效验
* @param {*} data
* @author: renchao
*/
export function logoutValidate (data) {
}
/**
* @description: 更正登记效验
* @param {*} data
* @author: renchao
*/
export function riviseValidate (data) {
}
/**
* @description: 补证登记效验
* @param {*} data
* @author: renchao
*/
export function renewalValidate (data) {
}
/**
* @description: 换证登记效验
* @param {*} data
* @author: renchao
*/
export function replaceValidate (data) {
}
\ No newline at end of file
/**
* @description: 首次登记效验
* @param {*} data
* @author: renchao
*/
export function fristValidate (formRules,dyfs) {
return formRules;
}
/**
* @description: 转移登记效验
* @param {*} data
* @author: renchao
*/
export function transferValidate (data) {
}
/**
* @description: 变更登记效验
* @param {*} data
* @author: renchao
*/
export function changeValidate (data) {
}
/**
* @description: 注销登记效验
* @param {*} data
* @author: renchao
*/
export function logoutValidate (data) {
}
/**
* @description: 更正登记效验
* @param {*} data
* @author: renchao
*/
export function riviseValidate (data) {
}
/**
* @description: 补证登记效验
* @param {*} data
* @author: renchao
*/
export function renewalValidate (data) {
}
/**
* @description: 换证登记效验
* @param {*} data
* @author: renchao
*/
export function replaceValidate (data) {
}
\ No newline at end of file
......
......@@ -8,7 +8,8 @@
ref="ruleForm"
:label-position="flag ? 'top' : ''"
:inline="flag"
label-width="140px">
label-width="140px"
>
<div class="slxx_con" :class="flag ? 'formMarginBot0' : ''">
<div class="slxx_title title-block">
申请业务信息
......@@ -50,10 +51,11 @@
</el-row>
<div class="slxx_title title-block">
<el-row>
<el-col :span="16">
预告买卖登记情况
</el-col>
<el-col :span="4" v-if="ruleForm.sldy.djlx=='300'||ruleForm.sldy.djlx=='500'">
<el-col :span="16"> 预告买卖登记情况 </el-col>
<el-col
:span="4"
v-if="ruleForm.sldy.djlx == '300' || ruleForm.sldy.djlx == '500'"
>
<el-button @click="compare">变化情况对比+</el-button>
</el-col>
</el-row>
......@@ -128,28 +130,34 @@
</div>
<el-row :gutter="10">
<el-col :span="8">
<el-form-item label="原不动产证号:"
<el-form-item
label="原不动产证号:"
prop="sldy.ybdcqzsh"
:rules="rules.ybdcqzshrules">
:rules="rules.ybdcqzshrules"
>
<el-input disabled v-model="ruleForm.sldy.ybdcqzsh"></el-input>
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item label="预告登记种类:"
<el-form-item
label="预告登记种类:"
prop="ygdj.ygdjzlmc"
:rules="rules.ygdjzlmcrules">
:rules="rules.ygdjzlmcrules"
>
<el-input disabled v-model="ruleForm.ygdj.ygdjzlmc"></el-input>
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item
label="是否禁止或者限制转让约定:"
label="是否禁止或者限制转让约定:"
label-width="200px"
prop="ygdj.sfczjzhxz"
:rules="rules.sfczjzhxzrules">
:rules="rules.sfczjzhxzrules"
>
<el-radio-group
v-model="ruleForm.ygdj.sfczjzhxz"
:disabled="!viewEdit">
:disabled="!viewEdit"
>
<el-radio label="1"></el-radio>
<el-radio label="0"></el-radio>
</el-radio-group>
......@@ -158,55 +166,69 @@
</el-row>
<el-row :gutter="10">
<el-col :span="8">
<el-form-item label="被担保主债权数额:"
<el-form-item
label="被担保主债权数额:"
prop="ygdj.qdjg"
:rules="rules.qdjgrules">
:rules="rules.qdjgrules"
>
<div class="flex">
<el-input
v-model="ruleForm.ygdj.qdjg"
:disabled="!viewEdit"></el-input>
:disabled="!viewEdit"
></el-input>
<el-select
v-model="ruleForm.ygdj.jedw"
:disabled="!viewEdit"
style="width: 68px">
style="width: 68px"
>
<el-option
v-for="item in dictData['A57']"
:key="item.dcode"
:label="item.dname"
:value="item.dcode"></el-option>
:value="item.dcode"
></el-option>
</el-select>
</div>
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item label="债务履行起始时间:"
<el-form-item
label="债务履行起始时间:"
prop="ygdj.zwlxqssj"
:rules="rules.zwlxqssjrules">
:rules="rules.zwlxqssjrules"
>
<el-date-picker
v-model="ruleForm.ygdj.zwlxqssj"
:disabled="!viewEdit"
type="date"></el-date-picker>
type="date"
></el-date-picker>
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item label="债务履行结束时间:"
<el-form-item
label="债务履行结束时间:"
prop="ygdj.zwlxjssj"
:rules="rules.zwlxjssjrules">
:rules="rules.zwlxjssjrules"
>
<el-date-picker
v-model="ruleForm.ygdj.zwlxjssj"
:disabled="!viewEdit"
type="date"></el-date-picker>
type="date"
></el-date-picker>
</el-form-item>
</el-col>
</el-row>
<el-row :gutter="10">
<el-col :span="24">
<el-form-item label="担保范围:"
<el-form-item
label="担保范围:"
prop="ygdj.dbfw"
:rules="rules.dbfwrules">
:rules="rules.dbfwrules"
>
<el-input
v-model="ruleForm.ygdj.dbfw"
:disabled="!viewEdit"></el-input>
:disabled="!viewEdit"
></el-input>
</el-form-item>
</el-col>
</el-row>
......@@ -218,7 +240,8 @@
maxlength="500"
show-word-limit
v-model="ruleForm.ygdj.fj"
:disabled="!viewEdit"></el-input>
:disabled="!viewEdit"
></el-input>
</el-form-item>
</el-col>
</el-row>
......@@ -231,7 +254,8 @@
<el-form-item label="共有方式:">
<el-radio-group
:disabled="!viewEdit"
v-model="ruleForm.sldy.gyfs">
v-model="ruleForm.sldy.gyfs"
>
<el-radio label="0">单独所有</el-radio>
<el-radio label="1">共同共有</el-radio>
<el-radio label="2">按份所有</el-radio>
......@@ -244,7 +268,8 @@
<el-radio-group
v-model="ruleForm.sldy.sqfbcz"
:disabled="!viewEdit"
@input="updaterow()">
@input="updaterow()"
>
<el-radio :label="1"></el-radio>
<el-radio :label="0"></el-radio>
</el-radio-group>
......@@ -252,17 +277,20 @@
</el-col>
<el-col
:span="6"
v-show="ruleForm.sldy.sqfbcz == '0' && ruleForm.sldy.gyfs != '0'">
v-show="ruleForm.sldy.sqfbcz == '0' && ruleForm.sldy.gyfs != '0'"
>
<el-form-item label="持证人:">
<el-select
v-model="czr"
placeholder="持证人"
:disabled="!viewEdit">
:disabled="!viewEdit"
>
<el-option
v-for="(item,index) in czrOptions"
v-for="(item, index) in czrOptions"
:key="index"
:label="item.sqrmc"
:value="item.id"></el-option>
:value="item.id"
></el-option>
</el-select>
</el-form-item>
</el-col>
......@@ -271,7 +299,8 @@
@upDateQlrxxList="upDateQlrxxList"
:tableData="ruleForm.qlrList"
:disabled="viewEdit"
:gyfs="ruleForm.sldy.gyfs" />
:gyfs="ruleForm.sldy.gyfs"
/>
<div class="slxx_title title-block">
抵押人信息
<div class="triangle"></div>
......@@ -280,21 +309,27 @@
@upDateQlrxxList="upDateYwrxxList"
:tableData="ruleForm.ywrList"
:disabled="viewEdit"
:gyfs="ruleForm.sldy.gyfs" />
:gyfs="ruleForm.sldy.gyfs"
/>
<div class="slxx_title title-block">
登记原因
<div class="triangle"></div>
</div>
<el-row :gutter="10">
<el-col>
<el-form-item v-if="ruleForm.sldy.djlx=='400'" label="注销登记原因:" prop="djyy">
<el-form-item
v-if="ruleForm.sldy.djlx == '400'"
label="注销登记原因:"
prop="ygdj.zxyy"
>
<el-input
class="textArea"
type="textarea"
maxlength="500"
show-word-limit
:disabled="!viewEdit"
v-model="ruleForm.ygdj.zxyy">
v-model="ruleForm.ygdj.zxyy"
>
</el-input>
</el-form-item>
<el-form-item v-else label="登记原因:" prop="ygdj.djyy">
......@@ -304,7 +339,8 @@
maxlength="500"
show-word-limit
:disabled="!viewEdit"
v-model="ruleForm.ygdj.djyy">
v-model="ruleForm.ygdj.djyy"
>
</el-input>
</el-form-item>
</el-col>
......@@ -319,217 +355,216 @@
</div>
</template>
<script>
import ywmix from "@/views/ywbl/mixin/index";
import qlrCommonTable from "@/views/workflow/components/qlrCommonTable";
import ywrCommonTable from "@/views/workflow/components/ywrCommonTable";
import { Init, saveData } from "@/api/workflow/ygdyFlow.js";
import { mapGetters } from "vuex";
import { formValidate } from "./slxxValidate";
export default {
mixins: [ywmix],
mounted () {
let that = this;
this.viewEdit = this.$parent.currentSelectTab.ableOperation;
this.propsParam = this.$attrs;
var formdata = new FormData();
this.loading = true;
formdata.append("bsmSldy", this.propsParam.bsmSldy);
formdata.append("bsmSlsq", this.$route.query.bsmSlsq);
formdata.append("djlx", this.propsParam.djlx);
formdata.append("isEdit", this.viewEdit);
Init(formdata).then((res) => {
import ywmix from "@/views/ywbl/mixin/index";
import qlrCommonTable from "@/views/workflow/components/qlrCommonTable";
import ywrCommonTable from "@/views/workflow/components/ywrCommonTable";
import { Init, saveData } from "@/api/workflow/ygdyFlow.js";
import { mapGetters } from "vuex";
import { formValidate } from "./slxxValidate";
export default {
mixins: [ywmix],
mounted() {
let that = this;
this.viewEdit = this.$parent.currentSelectTab.ableOperation;
this.propsParam = this.$attrs;
var formdata = new FormData();
this.loading = true;
formdata.append("bsmSldy", this.propsParam.bsmSldy);
formdata.append("bsmSlsq", this.$route.query.bsmSlsq);
formdata.append("djlx", this.propsParam.djlx);
formdata.append("isEdit", this.viewEdit);
Init(formdata)
.then((res) => {
setTimeout(() => {
that.loading = false
}, 200)
that.loading = false;
}, 200);
if (res.code === 200 && res.result) {
that.ruleForm = res.result;
that.ruleForm.qlrList.forEach((item) => {
item.id = item.bsmSqr
if (item.sfczr == '1') {
that.czr = item.bsmSqr
item.id = item.bsmSqr;
if (item.sfczr == "1") {
that.czr = item.bsmSqr;
}
})
});
that.czrOptions = this.ruleForm.qlrList;
that.isSave = that.viewEdit
that.isSave = that.viewEdit;
this.rules = formValidate(this.ruleForm.sldy.djlx);
} else {
that.isSave = false
that.$confirm(res.message, '提示', {
cancelButtonText: '取消',
that.isSave = false;
that.$confirm(res.message, "提示", {
cancelButtonText: "取消",
showConfirmButton: false,
type: 'warning'
})
type: "warning",
});
}
}).catch(() => {
this.loading = false
this.isSave = false
})
},
components: { qlrCommonTable, ywrCommonTable },
computed: {
...mapGetters(["dictData", "flag"])
},
data () {
return {
isSave: true,
//表单是否可操作
viewEdit: true,
loading: false,
disabled: true,
tdytOption: [],
czrOptions: [],
czr: "",
ruleForm: {},
//传递参数
propsParam: this.$attrs,
rules: {
ybdcqzshrules: [
{ required: true, message: "原不动产证号", trigger: "blur" },
],
ygdjzlmcrules: [
{ required: true, message: "预告登记种类", trigger: "blur" },
],
sfczjzhxzrules: [
{ required: true, message: "是否禁止或者限制转让的约定:", trigger: "blur" },
],
qdjgrules: [{ required: true, message: "被担保主债权数额", trigger: "blur" }],
zwlxqssjrules: [{ required: true, message: "债务履行起始时间", trigger: "blur" }],
zwlxjssjrules: [{ required: true, message: "债务履行结束时间", trigger: "blur" }],
dbfwrules: [{ required: true, message: "担保范围", trigger: "blur" }],
'ygdj.djyy': [
{ required: true, message: '请输入登记原因', trigger: 'blur' }
]
.catch(() => {
this.loading = false;
this.isSave = false;
});
},
components: { qlrCommonTable, ywrCommonTable },
computed: {
...mapGetters(["dictData", "flag"]),
},
data() {
return {
isSave: true,
//表单是否可操作
viewEdit: true,
loading: false,
disabled: true,
tdytOption: [],
czrOptions: [],
czr: "",
ruleForm: {},
//传递参数
propsParam: this.$attrs,
rules: {},
};
},
methods: {
/**
* @description: 更新权利人信息
* @param {*} val
* @author: renchao
*/
upDateQlrxxList(val) {
this.ruleForm.qlrList = _.cloneDeep(val);
this.czrOptions = this.ruleForm.qlrList;
this.num = 0;
this.ruleForm.qlrList.forEach((item) => {
if (item.id == this.czr) {
this.num++;
}
});
if (this.num == 0) {
this.czr = "";
}
},
methods: {
/**
* @description: 更新权利人信息
* @param {*} val
* @author: renchao
*/
upDateQlrxxList (val) {
this.ruleForm.qlrList = _.cloneDeep(val);
this.czrOptions = this.ruleForm.qlrList;
this.num = 0
this.ruleForm.qlrList.forEach(item => {
if (item.id == this.czr) {
this.num++
}
})
if (this.num == 0) {
this.czr = ''
/**
* @description: 义务人信息
* @param {*} val
* @author: renchao
*/
upDateYwrxxList(val) {
this.ruleForm.ywrList = _.cloneDeep(val);
}
/**
* @description: compare
* @author: renchao
*/,
compare() {
this.$popupDialog(
this.ruleForm.qlxx.qllxmc,
"registerBook/comparison",
{
bsmQlxx: this.ruleForm.qlxx.bsmQlxx,
dqqllx: "FDCQ2",
},
"80%",
true
);
},
/**
* @description: 是否持证人变化
* @author: renchao
*/
updaterow() {
this.czr = "";
},
/**
* @description: onSubmit
* @author: renchao
*/
onSubmit() {
let that = this;
if (this.ruleForm.qlrList.length == 0) {
this.$message({
showClose: true,
message: "请确认权利人信息",
type: "error",
});
return false;
}
if (this.ruleForm.sldy.gyfs == "0") {
if (this.ruleForm.qlrList.length > 1) {
this.$message({
showClose: true,
message: "共有方式:单独所有,权利人只能是一个人",
type: "error",
});
return false;
}
},
/**
* @description: 义务人信息
* @param {*} val
* @author: renchao
*/
upDateYwrxxList (val) {
this.ruleForm.ywrList = _.cloneDeep(val);
}, /**
* @description: compare
* @author: renchao
*/
compare () {
this.$popupDialog(
this.ruleForm.qlxx.qllxmc,
"registerBook/comparison",
{
bsmQlxx: this.ruleForm.qlxx.bsmQlxx,
dqqllx: "FDCQ2",
},
"80%",
true
);
},
/**
* @description: 是否持证人变化
* @author: renchao
*/
updaterow () {
this.czr = "";
},
/**
* @description: onSubmit
* @author: renchao
*/
onSubmit () {
let that = this;
if (this.ruleForm.qlrList.length == 0) {
this.ruleForm.qlrList[0].sfczr = "1";
} else {
if (this.ruleForm.qlrList.length <= 1) {
this.$message({
showClose: true,
message: "请确认权利人信息",
message:
"共有方式:共同所有,按份所有,其他所有,权利人必须是两个以上",
type: "error",
});
return false;
}
if (this.ruleForm.sldy.gyfs == "0") {
if (this.ruleForm.qlrList.length > 1) {
this.$message({
showClose: true,
message: "共有方式:单独所有,权利人只能是一个人",
type: "error",
});
return false;
}
this.ruleForm.qlrList[0].sfczr = "1";
//是否分别持证
if (this.ruleForm.sldy.sqfbcz == "1") {
//是
this.ruleForm.qlrList.forEach((item, index) => {
item.sfczr = "1";
});
} else {
if (this.ruleForm.qlrList.length <= 1) {
this.$message({
if (that.czr === "") {
that.$message({
showClose: true,
message:
"共有方式:共同所有,按份所有,其他所有,权利人必须是两个以上",
message: "请选择持证人",
type: "error",
});
return false;
}
//是否分别持证
if (this.ruleForm.sldy.sqfbcz == "1") {
//是
this.ruleForm.qlrList.forEach((item, index) => {
this.ruleForm.qlrList.forEach((item, index) => {
if (item.id == that.czr) {
item.sfczr = "1";
});
} else {
if (that.czr === '') {
that.$message({
} else {
item.sfczr = "0";
}
});
}
}
this.$refs["ruleForm"].validate((valid) => {
if (valid) {
that.$store.dispatch("user/refreshPage", false);
saveData(this.ruleForm).then((res) => {
if (res.code === 200) {
this.$message({
showClose: true,
message: "保存成功!",
type: "success",
});
this.$store.dispatch("user/refreshPage", true);
} else {
this.$message({
showClose: true,
message: "请选择持证人",
message: res.message,
type: "error",
});
return false;
}
this.ruleForm.qlrList.forEach((item, index) => {
if (item.id == that.czr) {
item.sfczr = "1";
} else {
item.sfczr = "0";
}
});
}
});
} else {
that.$message({
showClose: true,
message: "请输入红框内的相关信息!",
type: "error",
});
return false;
}
saveData(this.ruleForm).then((res) => {
if (res.code === 200) {
this.$message({
showClose: true,
message: "保存成功!",
type: "success",
});
this.$store.dispatch("user/refreshPage", true);
} else {
this.$message({
showClose: true,
message: res.message,
type: "error"
})
}
})
}
}
}
});
},
},
};
</script>
<style scoped lang="scss">
@import "~@/styles/public.scss";
@import "~@/styles/slxx/slxx.scss";
@import "~@/styles/public.scss";
@import "~@/styles/slxx/slxx.scss";
</style>
......
......@@ -4,89 +4,99 @@
* @author: renchao
*/
export function formValidate (djlx) {
switch (djlx) {
case "100":
return fristValidate();
case "200":
return transferValidate();
case "300":
return changeValidate();
case "400":
return logoutValidate();
case "500":
return riviseValidate();
case "901":
return renewalValidate();
case "902":
return replaceValidate();
}
}
/**
* @description: 首次登记效验
* @param {*} data
* @author: renchao
*/
export function fristValidate () {
var formRules={
'diyaq.djyy': [
{ required: true, message: '请输入登记原因', trigger: 'blur' }
]
var formRules={
'ygdj.sfczjzhxz': [
{ required: false, message: '是否禁止或者限制转让约定:', trigger: 'blur' }
],
'ygdj.qdjg': [
{ required: false, message: '被担保主债权数额:', trigger: 'blur' }
],
'ygdj.zwlxqssj': [
{ required: false, message: '债务履行起始时间:', trigger: 'blur' }
],
'ygdj.zwlxjssj': [
{ required: false, message: '债务履行结束时间:', trigger: 'blur' }
],
'ygdj.djyy': [
{ required: false, message: '请输入登记原因', trigger: 'blur' }
],
'ygdj.zxyy': [
{ required: false, message: '请输入注销登记原因', trigger: 'blur' }
]
}
if (djlx=="400") {
formRules["ygdj.zxyy"][0].required=true;
}else{
formRules["ygdj.sfczjzhxz"][0].required=true;
formRules["ygdj.qdjg"][0].required=true;
formRules["ygdj.zwlxqssj"][0].required=true;
formRules["ygdj.zwlxjssj"][0].required=true;
formRules["ygdj.djyy"][0].required=true;
}
return formRules;
}
return formRules;
}
/**
* @description: 转移登记效验
* @param {*} data
* @author: renchao
*/
export function transferValidate (data) {
}
/**
* @description: 变更登记效验
* @param {*} data
* @author: renchao
*/
export function changeValidate (data) {
}
/**
* @description: 注销登记效验
* @param {*} data
* @author: renchao
*/
export function logoutValidate (data) {
}
/**
* @description: 更正登记效验
* @param {*} data
* @author: renchao
*/
export function riviseValidate (data) {
}
/**
* @description: 补证登记效验
* @param {*} data
* @author: renchao
*/
export function renewalValidate (data) {
}
/**
* @description: 换证登记效验
* @param {*} data
* @author: renchao
*/
export function replaceValidate (data) {
}
\ No newline at end of file
/**
* @description: 首次登记效验
* @param {*} data
* @author: renchao
*/
export function fristValidate (formRules,dyfs) {
return formRules;
}
/**
* @description: 转移登记效验
* @param {*} data
* @author: renchao
*/
export function transferValidate (data) {
}
/**
* @description: 变更登记效验
* @param {*} data
* @author: renchao
*/
export function changeValidate (data) {
}
/**
* @description: 注销登记效验
* @param {*} data
* @author: renchao
*/
export function logoutValidate (data) {
}
/**
* @description: 更正登记效验
* @param {*} data
* @author: renchao
*/
export function riviseValidate (data) {
}
/**
* @description: 补证登记效验
* @param {*} data
* @author: renchao
*/
export function renewalValidate (data) {
}
/**
* @description: 换证登记效验
* @param {*} data
* @author: renchao
*/
export function replaceValidate (data) {
}
\ No newline at end of file
......
......@@ -2,7 +2,7 @@
<!-- 受理信息 -->
<div class="slxx">
<el-form
:model="ruleForm"
:model="ruleForm" :rules="rules"
v-Loading="loading"
:label-position="flag ? 'top' : ''"
:inline="flag"
......@@ -58,13 +58,13 @@
在建工程抵押信息列表({{ ruleForm.qlxxList.length }} 户)
<div class="triangle"></div>
</div>
<div
class="slxx_title title-block"
v-else>
<div class="slxx_title title-block" v-else>
抵押户信息列表信息({{ ruleForm.hlist.length }} 户)
<div class="triangle"></div>
</div>
<qlxxTable :tableData="ruleForm.qlxxList" v-if="ruleForm.slsq.djywbm.includes('400')" />
<qlxxTable
:tableData="ruleForm.qlxxList"
v-if="ruleForm.slsq.djywbm.includes('400')" />
<qjhTable v-else :tableData="ruleForm.hlist" />
<div class="slxx_title title-block">
抵押信息
......@@ -75,7 +75,7 @@
v-if="ruleForm.diyaqList && ruleForm.diyaqList.length > 0">
<el-col :span="8">
<el-form-item label="抵押方式:">
<el-radio-group disabled v-model="ruleForm.diyaqList[0].dyfs">
<el-radio-group disabled v-model="ruleForm.diyaq.dyfs">
<el-radio label="1">一般抵押</el-radio>
<el-radio label="2">最高额抵押</el-radio>
</el-radio-group>
......@@ -84,7 +84,7 @@
<el-col :span="8">
<el-form-item label="抵押金额类型:">
<el-radio-group
v-model="ruleForm.diyaqList[0].dyjelx"
v-model="ruleForm.diyaq.dyjelx"
:disabled="!viewEdit || ruleForm.slsq.djywbm.includes('400')">
<el-radio label="0">独立抵押</el-radio>
<el-radio label="1">整体抵押</el-radio>
......@@ -93,13 +93,14 @@
</el-col>
<el-col :span="8">
<el-form-item
label="是否存在禁止或者限制转让抵押不动产的约定:"
label-width="300px">
label="是否禁止或者限制转让约定:"
label-width="200px"
prop="diyaq.sfczjzhxz">
<el-radio-group
v-model="ruleForm.diyaqList[0].sfczjzhxz"
v-model="ruleForm.diyaq.sfczjzhxz"
:disabled="!viewEdit || ruleForm.slsq.djywbm.includes('400')">
<el-radio label="1">启用</el-radio>
<el-radio label="0">禁用</el-radio>
<el-radio label="1"></el-radio>
<el-radio label="0"></el-radio>
</el-radio-group>
</el-form-item>
</el-col>
......@@ -107,15 +108,17 @@
<el-row
:gutter="10"
v-if="ruleForm.diyaqList && ruleForm.diyaqList.length > 0">
<el-col :span="8" v-show="ruleForm.diyaqList[0].dyfs == 1">
<el-form-item label="被担保主债权数额:">
<el-col :span="8" v-show="ruleForm.diyaq.dyfs == 1">
<el-form-item
label="被担保主债权数额:"
prop="diyaq.bdbzzqse">
<div style="display: flex">
<el-input
v-model="ruleForm.diyaqList[0].bdbzzqse"
v-model="ruleForm.diyaq.bdbzzqse"
:disabled="!viewEdit || ruleForm.slsq.djywbm.includes('400')"></el-input>
<el-select
style="width: 68px"
v-model="ruleForm.diyaqList[0].jedw"
v-model="ruleForm.diyaq.jedw"
:disabled="!viewEdit || ruleForm.slsq.djywbm.includes('400')">
<el-option
v-for="item in dictData['A57']"
......@@ -128,13 +131,13 @@
</el-form-item>
</el-col>
<el-col :span="8" v-show="ruleForm.diyaqList[0].dyfs == 2">
<el-form-item label="最高债权额:">
<el-col :span="8" v-show="ruleForm.diyaq.dyfs == 2">
<el-form-item label="最高债权额:" prop="diyaq.zgzqse">
<el-input
v-model="ruleForm.diyaqList[0].zgzqse"
v-model="ruleForm.diyaq.zgzqse"
:disabled="!viewEdit || ruleForm.slsq.djywbm.includes('400')"></el-input>
<el-select
v-model="ruleForm.diyaqList[0].jedw"
v-model="ruleForm.diyaq.jedw"
:disabled="!viewEdit || ruleForm.slsq.djywbm.includes('400')">
<el-option
v-for="item in dictData['A57']"
......@@ -147,18 +150,22 @@
</el-col>
<el-col :span="8">
<el-form-item label="债务履行起始时间:">
<el-form-item
label="债务履行起始时间:"
prop="diyaq.zwlxqssj">
<el-date-picker
v-model="ruleForm.diyaqList[0].zwlxqssj"
v-model="ruleForm.diyaq.zwlxqssj"
:disabled="!viewEdit || ruleForm.slsq.djywbm.includes('400')"
type="date">
</el-date-picker>
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item label="债务履行结束时间:">
<el-form-item
label="债务履行结束时间:"
prop="diyaq.zwlxjssj">
<el-date-picker
v-model="ruleForm.diyaqList[0].zwlxjssj"
v-model="ruleForm.diyaq.zwlxjssj"
:disabled="!viewEdit || ruleForm.slsq.djywbm.includes('400')"
type="date">
</el-date-picker>
......@@ -170,16 +177,18 @@
<el-col :span="24">
<el-form-item label="担保范围:">
<el-input
v-model="ruleForm.diyaqList[0].dbfw"
v-model="ruleForm.diyaq.dbfw"
:disabled="!viewEdit || ruleForm.slsq.djywbm.includes('400')"></el-input>
</el-form-item>
</el-col>
</el-row>
<el-row v-if="ruleForm.diyaqList && ruleForm.diyaqList.length > 0">
<el-col :span="24">
<el-form-item label="最高债权确定事实和数额:">
<el-form-item
label="最高债权确定事实和数额:"
prop="diyaq.zgzqqdss">
<el-input
v-model="ruleForm.diyaqList[0].zgzqqdss"
v-model="ruleForm.diyaq.zgzqqdss"
:disabled="!viewEdit || ruleForm.slsq.djywbm.includes('400')"></el-input>
</el-form-item>
</el-col>
......@@ -191,7 +200,7 @@
type="textarea"
maxlength="500"
show-word-limit
v-model="ruleForm.diyaqList[0].fj"
v-model="ruleForm.diyaq.fj"
:disabled="!viewEdit || ruleForm.slsq.djywbm.includes('400')"></el-input>
</el-form-item>
</el-col>
......@@ -239,7 +248,7 @@
placeholder="持证人"
:disabled="!viewEdit">
<el-option
v-for="(item,index) in czrOptions"
v-for="(item, index) in czrOptions"
:key="index"
:label="item.sqrmc"
:value="item.id">
......@@ -273,23 +282,22 @@
<el-col>
<el-form-item
v-if="ruleForm.sldyList[0].djlx == '400'"
label="注销抵押原因:"
prop="djyy">
label="注销抵押原因:" prop="diyaq.zxdyyy">
<el-input
class="textArea"
type="textarea"
:disabled="!viewEdit"
v-model="ruleForm.diyaqList[0].zxdyyy">
v-model="ruleForm.diyaq.zxdyyy">
</el-input>
</el-form-item>
<el-form-item v-else label="登记原因:" prop="diyaqList[0].djyy">
<el-form-item v-else label="登记原因:" prop="diyaq.djyy">
<el-input
class="textArea"
type="textarea"
maxlength="500"
show-word-limit
:disabled="!viewEdit"
v-model="ruleForm.diyaqList[0].djyy">
v-model="ruleForm.diyaq.djyy">
</el-input>
</el-form-item>
</el-col>
......@@ -308,43 +316,50 @@
import qlxxTable from "../commonTable/qlxxTable.vue";
import qlrCommonTable from "@/views/workflow/components/qlrCommonTable";
import { bacthInit, saveBatchData } from "@/api/workflow/zjgcdyFlow.js";
import { formValidate } from "./slxxValidate";
import { mapGetters } from "vuex";
export default {
mounted () {
let that = this
let that = this;
this.viewEdit = this.$parent.currentSelectTab.ableOperation;
this.propsParam = this.$attrs;
var formdata = new FormData();
this.loading = true
this.loading = true;
formdata.append("bsmSlsq", this.$route.query.bsmSlsq);
formdata.append("djlx", this.propsParam.djlx);
formdata.append("isEdit", this.viewEdit);
bacthInit(formdata).then((res) => {
setTimeout(() => {
that.loading = false
}, 200)
if (res.code === 200 && res.result) {
this.ruleForm = res.result;
this.ruleForm.qlrList.forEach((item) => {
item.id = item.bsmSqr
if (item.sfczr == '1') {
that.czr = item.bsmSqr
}
})
that.czrOptions = that.ruleForm.qlrList;
that.isSave = that.viewEdit
} else {
that.isSave = false
that.$confirm(res.message, '提示', {
cancelButtonText: '取消',
showConfirmButton: false,
type: 'warning'
})
}
}).catch(() => {
this.loading = false
})
bacthInit(formdata)
.then((res) => {
setTimeout(() => {
that.loading = false;
}, 200);
if (res.code === 200 && res.result) {
this.ruleForm = res.result;
this.ruleForm.qlrList.forEach((item) => {
item.id = item.bsmSqr;
if (item.sfczr == "1") {
that.czr = item.bsmSqr;
}
});
that.czrOptions = that.ruleForm.qlrList;
that.isSave = that.viewEdit;
that.rules = formValidate(
that.ruleForm.sldyList[0].djlx,
that.ruleForm.diyaq.dyfs
);
} else {
that.isSave = false;
that.$confirm(res.message, "提示", {
cancelButtonText: "取消",
showConfirmButton: false,
type: "warning",
});
}
})
.catch(() => {
this.loading = false;
});
},
components: { qlrCommonTable, qjhTable, qlxxTable },
computed: {
......@@ -362,13 +377,9 @@
ruleForm: {},
//传递参数
propsParam: {},
rules: {
'diyaqList[0].djyy': [
{ required: true, message: '请输入登记原因', trigger: 'blur' }
]
},
tableData: [],
};
rules: {},
tableData: []
}
},
methods: {
/**
......@@ -409,10 +420,10 @@
if (this.ruleForm.sldyList[0].sqfbcz == "1") {
//是
this.ruleForm.qlrList.forEach((item, index) => {
item.sfczr = "1"
})
item.sfczr = "1";
});
} else {
if (that.czr === '') {
if (that.czr === "") {
that.$message({
showClose: true,
message: "请选择持证人",
......@@ -429,7 +440,7 @@
});
}
}
this.$refs['ruleForm'].validate((valid) => {
this.$refs["ruleForm"].validate((valid) => {
if (valid) {
that.$store.dispatch("user/refreshPage", false);
saveBatchData(that.ruleForm, that.propsParam.djlx).then((res) => {
......@@ -447,16 +458,16 @@
type: "error",
});
}
})
});
} else {
that.$message({
showClose: true,
message: "请输入登记原因",
type: "error"
})
return false
message: "请输入红框内的相关信息!",
type: "error",
});
return false;
}
})
});
},
/**
* @description: 是否持证人变化
......@@ -476,14 +487,14 @@
this.ruleForm.qlrList = _.cloneDeep(val);
this.czrOptions = this.ruleForm.qlrList;
}
this.num = 0
this.ruleForm.qlrList.forEach(item => {
this.num = 0;
this.ruleForm.qlrList.forEach((item) => {
if (item.id == this.czr) {
this.num++
this.num++;
}
})
});
if (this.num == 0) {
this.czr = ''
this.czr = "";
}
},
/**
......@@ -495,9 +506,9 @@
if (!_.isEqual(val, this.ruleForm.ywrList)) {
this.ruleForm.ywrList = _.cloneDeep(val);
}
}
}
}
},
},
};
</script>
<style scoped lang="scss">
@import "~@/styles/public.scss";
......
......@@ -8,7 +8,8 @@
ref="ruleForm"
:label-position="flag ? 'top' : ''"
:inline="flag"
label-width="170px">
label-width="170px"
>
<div class="slxx_con" :class="flag ? 'formMarginBot0' : ''">
<div class="slxx_title title-block">
申请业务信息
......@@ -48,12 +49,13 @@
</el-form-item>
</el-col>
</el-row>
<div class="slxx_title title-block">
<div class="slxx_title title-block">
<el-row>
<el-col :span="16">
抵押户信息情况
</el-col>
<el-col :span="4" v-if="ruleForm.sldy.djlx=='300'||ruleForm.sldy.djlx=='500'">
<el-col :span="16"> 抵押户信息情况 </el-col>
<el-col
:span="4"
v-if="ruleForm.sldy.djlx == '300' || ruleForm.sldy.djlx == '500'"
>
<el-button @click="compare">变化情况对比+</el-button>
</el-col>
</el-row>
......@@ -82,14 +84,17 @@
<div class="flex">
<el-input
maxlength="12"
v-model="ruleForm.qjh.jzmj" disabled
oninput="value = (value.match(/^\d*(\.?\d{0,2})/g)[0]) || null"></el-input>
v-model="ruleForm.qjh.jzmj"
disabled
oninput="value = (value.match(/^\d*(\.?\d{0,2})/g)[0]) || null"
></el-input>
<el-select disabled v-model="mjdw" style="width: 68px">
<el-option
v-for="item in dictData['A7']"
:key="item.dcode"
:label="item.dname"
:value="item.dcode">
:value="item.dcode"
>
</el-option>
</el-select>
</div>
......@@ -100,14 +105,17 @@
<div class="flex">
<el-input
maxlength="12"
v-model="ruleForm.qjh.tnjzmj" disabled
oninput="value = (value.match(/^\d*(\.?\d{0,2})/g)[0]) || null"></el-input>
v-model="ruleForm.qjh.tnjzmj"
disabled
oninput="value = (value.match(/^\d*(\.?\d{0,2})/g)[0]) || null"
></el-input>
<el-select disabled v-model="mjdw" style="width: 68px">
<el-option
v-for="item in dictData['A7']"
:key="item.dcode"
:label="item.dname"
:value="item.dcode">
:value="item.dcode"
>
</el-option>
</el-select>
</div>
......@@ -118,14 +126,17 @@
<div class="flex">
<el-input
maxlength="12"
v-model="ruleForm.qjh.ftjzmj" disabled
oninput="value = (value.match(/^\d*(\.?\d{0,2})/g)[0]) || null"></el-input>
v-model="ruleForm.qjh.ftjzmj"
disabled
oninput="value = (value.match(/^\d*(\.?\d{0,2})/g)[0]) || null"
></el-input>
<el-select disabled v-model="mjdw" style="width: 68px">
<el-option
v-for="item in dictData['A7']"
:key="item.dcode"
:label="item.dname"
:value="item.dcode">
:value="item.dcode"
>
</el-option>
</el-select>
</div>
......@@ -157,6 +168,15 @@
<el-row :gutter="10">
<el-col :span="8">
<el-form-item
label="原不动产证号:"
prop="sldy.ybdcqzsh"
:rules="rules.ybdcqzshrules"
>
<el-input disabled v-model="ruleForm.sldy.ybdcqzsh"></el-input>
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item label="抵押方式:">
<!-- <el-input disabled v-model="ruleForm.slywxx.djqxmc"></el-input> -->
<el-radio-group disabled v-model="ruleForm.diyaq.dyfs">
......@@ -165,13 +185,16 @@
</el-radio-group>
</el-form-item>
</el-col>
<el-col :span="16">
<el-col :span="8">
<el-form-item
label="是否存在禁止或者限制转让抵押不动产的约定:"
label-width="350px">
label="是否禁止或者限制转让约定:"
label-width="200px"
prop="diyaq.sfczjzhxz"
>
<el-radio-group
v-model="ruleForm.diyaq.sfczjzhxz"
:disabled="!viewEdit || ruleForm.sldy.djlx == '400'">
:disabled="!viewEdit || ruleForm.sldy.djlx == '400'"
>
<el-radio label="1"></el-radio>
<el-radio label="0"></el-radio>
</el-radio-group>
......@@ -181,18 +204,23 @@
<el-row :gutter="10">
<el-col :span="8" v-show="ruleForm.diyaq.dyfs == 1">
<el-form-item label="被担保主债权数额:">
<div style="display:flex">
<el-form-item label="被担保主债权数额:" prop="diyaq.bdbzzqse">
<div style="display: flex">
<el-input
v-model="ruleForm.diyaq.bdbzzqse"
:disabled="!viewEdit || ruleForm.sldy.djlx == '400'"></el-input>
<el-select style="width: 68px" v-model="ruleForm.diyaq.jedw"
:disabled="!viewEdit || ruleForm.sldy.djlx == '400'">
:disabled="!viewEdit || ruleForm.sldy.djlx == '400'"
></el-input>
<el-select
style="width: 68px"
v-model="ruleForm.diyaq.jedw"
:disabled="!viewEdit || ruleForm.sldy.djlx == '400'"
>
<el-option
v-for="item in dictData['A57']"
:key="item.dcode"
:label="item.dname"
:value="item.dcode">
:value="item.dcode"
>
</el-option>
</el-select>
</div>
......@@ -200,17 +228,23 @@
</el-col>
<el-col :span="8" v-show="ruleForm.diyaq.dyfs == 2">
<el-form-item label="最高债权额:">
<el-form-item label="最高债权额:" prop="diyaq.zgzqse">
<div style="display: flex">
<el-input
v-model="ruleForm.diyaq.zgzqse"
:disabled="!viewEdit || ruleForm.sldy.djlx == '400'"></el-input>
<el-select v-model="ruleForm.diyaq.jedw" style="width: 68px" :disabled="!viewEdit || ruleForm.sldy.djlx == '400'">
:disabled="!viewEdit || ruleForm.sldy.djlx == '400'"
></el-input>
<el-select
v-model="ruleForm.diyaq.jedw"
style="width: 68px"
:disabled="!viewEdit || ruleForm.sldy.djlx == '400'"
>
<el-option
v-for="item in dictData['A57']"
:key="item.dcode"
:label="item.dname"
:value="item.dcode">
:value="item.dcode"
>
</el-option>
</el-select>
</div>
......@@ -218,20 +252,22 @@
</el-col>
<el-col :span="8">
<el-form-item label="债务履行起始时间:">
<el-form-item label="债务履行起始时间:" prop="diyaq.zwlxqssj">
<el-date-picker
v-model="ruleForm.diyaq.zwlxqssj"
:disabled="!viewEdit || ruleForm.sldy.djlx == '400'"
type="date">
type="date"
>
</el-date-picker>
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item label="债务履行结束时间:">
<el-form-item label="债务履行结束时间:" prop="diyaq.zwlxjssj">
<el-date-picker
v-model="ruleForm.diyaq.zwlxjssj"
:disabled="!viewEdit || ruleForm.sldy.djlx == '400'"
type="date">
type="date"
>
</el-date-picker>
</el-form-item>
</el-col>
......@@ -242,7 +278,8 @@
<el-form-item label="担保范围:">
<el-input
v-model="ruleForm.diyaq.dbfw"
:disabled="!viewEdit || ruleForm.sldy.djlx == '400'"></el-input>
:disabled="!viewEdit || ruleForm.sldy.djlx == '400'"
></el-input>
</el-form-item>
</el-col>
</el-row>
......@@ -251,7 +288,8 @@
<el-form-item label="最高债权确定事实和数额:">
<el-input
v-model="ruleForm.diyaq.zgzqqdss"
:disabled="!viewEdit || ruleForm.sldy.djlx == '400'"></el-input>
:disabled="!viewEdit || ruleForm.sldy.djlx == '400'"
></el-input>
</el-form-item>
</el-col>
</el-row>
......@@ -263,7 +301,8 @@
maxlength="500"
show-word-limit
v-model="ruleForm.diyaq.fj"
:disabled="!viewEdit || ruleForm.sldy.djlx == '400'"></el-input>
:disabled="!viewEdit || ruleForm.sldy.djlx == '400'"
></el-input>
</el-form-item>
</el-col>
</el-row>
......@@ -277,7 +316,8 @@
<el-form-item label="共有方式:">
<el-radio-group
:disabled="!viewEdit"
v-model="ruleForm.sldy.gyfs">
v-model="ruleForm.sldy.gyfs"
>
<el-radio label="0">单独所有</el-radio>
<el-radio label="1">共同共有</el-radio>
<el-radio label="2">按份所有</el-radio>
......@@ -290,7 +330,8 @@
<el-radio-group
v-model="ruleForm.sldy.sqfbcz"
:disabled="!viewEdit"
@input="updaterow()">
@input="updaterow()"
>
<el-radio :label="1"></el-radio>
<el-radio :label="0"></el-radio>
</el-radio-group>
......@@ -298,28 +339,32 @@
</el-col>
<el-col
:span="6"
v-show="ruleForm.sldy.sqfbcz == '0' && ruleForm.sldy.gyfs != '0'">
v-show="ruleForm.sldy.sqfbcz == '0' && ruleForm.sldy.gyfs != '0'"
>
<el-form-item label="持证人:">
<el-select
v-model="czr"
placeholder="持证人"
:disabled="!viewEdit">
:disabled="!viewEdit"
>
<el-option
v-for="(item,index) in czrOptions"
v-for="(item, index) in czrOptions"
:key="index"
:label="item.sqrmc"
:value="item.id">
:value="item.id"
>
</el-option>
</el-select>
</el-form-item>
</el-col>
</el-row>
<qlrCommonTable
style="margin-bottom:3px"
style="margin-bottom: 3px"
:tableData="ruleForm.qlrList"
@upDateQlrxxList="upDateQlrxxList"
:disabled="viewEdit"
:gyfs="ruleForm.sldy.gyfs" />
:gyfs="ruleForm.sldy.gyfs"
/>
<div class="slxx_title title-block">
抵押人信息
<div class="triangle"></div>
......@@ -327,7 +372,8 @@
<qlrCommonTable
:tableData="ruleForm.ywrList"
@upDateQlrxxList="upDateYwrxxList"
:disabled="viewEdit" />
:disabled="viewEdit"
/>
<div class="slxx_title title-block">
登记原因
......@@ -338,12 +384,14 @@
<el-form-item
v-if="ruleForm.sldy.djlx == '400'"
label="注销抵押原因:"
prop="djyy">
prop="diyaq.zxdyyy"
>
<el-input
class="textArea"
type="textarea"
:disabled="!viewEdit"
v-model="ruleForm.diyaq.zxdyyy">
v-model="ruleForm.diyaq.zxdyyy"
>
</el-input>
</el-form-item>
<el-form-item v-else label="登记原因:" prop="diyaq.djyy">
......@@ -353,7 +401,8 @@
maxlength="500"
show-word-limit
:disabled="!viewEdit"
v-model="ruleForm.diyaq.djyy">
v-model="ruleForm.diyaq.djyy"
>
</el-input>
</el-form-item>
</el-col>
......@@ -368,230 +417,231 @@
</div>
</template>
<script>
import qlrCommonTable from "@/views/workflow/components/qlrCommonTable";
import { Init, saveData } from "@/api/workflow/zjgcdyFlow.js";
import { mapGetters } from "vuex";
import { formValidate } from "./slxxValidate";
export default {
mounted () {
let that = this
this.viewEdit = this.$parent.currentSelectTab.ableOperation;
this.propsParam = this.$attrs;
var formdata = new FormData();
this.loading = true
formdata.append("bsmSldy", this.propsParam.bsmSldy);
formdata.append("djlx", this.propsParam.djlx);
formdata.append("isEdit", this.viewEdit);
Init(formdata).then((res) => {
this.loading = false
import qlrCommonTable from "@/views/workflow/components/qlrCommonTable";
import { Init, saveData } from "@/api/workflow/zjgcdyFlow.js";
import { mapGetters } from "vuex";
import { formValidate } from "./slxxValidate";
export default {
mounted() {
let that = this;
this.viewEdit = this.$parent.currentSelectTab.ableOperation;
this.propsParam = this.$attrs;
var formdata = new FormData();
this.loading = true;
formdata.append("bsmSldy", this.propsParam.bsmSldy);
formdata.append("djlx", this.propsParam.djlx);
formdata.append("isEdit", this.viewEdit);
Init(formdata)
.then((res) => {
this.loading = false;
if (res.code === 200 && res.result) {
this.ruleForm = res.result;
window.djlx = res.result.sldy.djlx
window.djlx = res.result.sldy.djlx;
this.czrOptions = this.ruleForm.qlrList;
this.ruleForm.qlrList.forEach((item) => {
item.id = item.bsmSqr
if (item.sfczr == '1') {
that.czr = item.bsmSqr
item.id = item.bsmSqr;
if (item.sfczr == "1") {
that.czr = item.bsmSqr;
}
})
});
that.czrOptions = that.ruleForm.qlrList;
that.isSave = that.viewEdit
that.isSave = that.viewEdit;
that.rules = formValidate(
that.ruleForm.sldy.djlx,
that.ruleForm.diyaq.dyfs
);
} else {
that.isSave = false
that.$confirm(res.message, '提示', {
cancelButtonText: '取消',
that.isSave = false;
that.$confirm(res.message, "提示", {
cancelButtonText: "取消",
showConfirmButton: false,
type: 'warning'
})
type: "warning",
});
}
}).catch(() => {
this.loading = false
})
},
components: { qlrCommonTable },
computed: {
...mapGetters(["dictData", "flag"]),
},
data () {
return {
mjdw: '1',
isSave: true,
loading: false,
//表单是否可操作
viewEdit: true,
disabled: true,
czrOptions: [],
czr: "",
ruleForm: {},
//传递参数
propsParam: {},
rules: {
'diyaq.djyy': [
{ required: true, message: '请输入登记原因', trigger: 'blur' }
]
},
// 键名转换,方法默认是label和children进行树状渲染
normalizer (node) {
//方法
if (node.children == null || node.children == "null") {
delete node.children;
}
return {
id: node.dcode,
label: node.dname,
};
},
};
},
methods: {
/**
* @description: onSubmitClick
* @author: renchao
*/
onSubmitClick () {
let that = this;
if (this.ruleForm.qlrList.length == 0) {
.catch(() => {
this.loading = false;
});
},
components: { qlrCommonTable },
computed: {
...mapGetters(["dictData", "flag"]),
},
data() {
return {
mjdw: "1",
isSave: true,
loading: false,
//表单是否可操作
viewEdit: true,
disabled: true,
czrOptions: [],
czr: "",
ruleForm: {},
//传递参数
propsParam: {},
rules: {},
// 键名转换,方法默认是label和children进行树状渲染
normalizer(node) {
//方法
if (node.children == null || node.children == "null") {
delete node.children;
}
return {
id: node.dcode,
label: node.dname,
};
},
};
},
methods: {
/**
* @description: onSubmitClick
* @author: renchao
*/
onSubmitClick() {
let that = this;
if (this.ruleForm.qlrList.length == 0) {
this.$message({
showClose: true,
message: "请确认权利人信息",
type: "error",
});
return false;
}
if (this.ruleForm.sldy.gyfs == "0") {
if (this.ruleForm.qlrList.length > 1) {
this.$message({
showClose: true,
message: "请确认权利人信息",
message: "共有方式:单独所有,权利人只能是一个人",
type: "error",
});
return false;
}
if (this.ruleForm.sldy.gyfs == "0") {
if (this.ruleForm.qlrList.length > 1) {
this.$message({
showClose: true,
message: "共有方式:单独所有,权利人只能是一个人",
type: "error",
});
return false;
}
this.ruleForm.qlrList[0].sfczr = "1";
this.ruleForm.qlrList[0].sfczr = "1";
} else {
if (this.ruleForm.qlrList.length <= 1) {
this.$message({
showClose: true,
message:
"共有方式:共同所有,按份所有,其他所有,权利人必须是两个以上",
type: "error",
});
return false;
}
//是否分别持证
if (this.ruleForm.sldy.sqfbcz == "1") {
//是
this.ruleForm.qlrList.forEach((item, index) => {
item.sfczr = "1";
});
} else {
if (this.ruleForm.qlrList.length <= 1) {
this.$message({
if (that.czr === "") {
that.$message({
showClose: true,
message:
"共有方式:共同所有,按份所有,其他所有,权利人必须是两个以上",
message: "请选择持证人",
type: "error",
});
return false;
}
//是否分别持证
if (this.ruleForm.sldy.sqfbcz == "1") {
//是
this.ruleForm.qlrList.forEach((item, index) => {
this.ruleForm.qlrList.forEach((item, index) => {
if (item.id == that.czr) {
item.sfczr = "1";
});
} else {
if (that.czr === '') {
} else {
item.sfczr = "0";
}
});
}
}
this.$refs["ruleForm"].validate((valid) => {
if (valid) {
that.$store.dispatch("user/refreshPage", false);
saveData(that.ruleForm, that.propsParam.djlx).then((res) => {
if (res.code === 200) {
that.$message({
showClose: true,
message: "保存成功!",
type: "success",
});
that.$store.dispatch("user/refreshPage", true);
} else {
that.$message({
showClose: true,
message: "请选择持证人",
message: res.message,
type: "error",
});
return false;
}
this.ruleForm.qlrList.forEach((item, index) => {
if (item.id == that.czr) {
item.sfczr = "1";
} else {
item.sfczr = "0";
}
});
}
}
this.$refs['ruleForm'].validate((valid) => {
if (valid) {
that.$store.dispatch("user/refreshPage", false);
saveData(that.ruleForm, that.propsParam.djlx).then((res) => {
if (res.code === 200) {
that.$message({
showClose: true,
message: "保存成功!",
type: "success",
});
that.$store.dispatch("user/refreshPage", true);
} else {
that.$message({
showClose: true,
message: res.message,
type: "error",
});
}
})
} else {
that.$message({
showClose: true,
message: "请输入登记原因",
type: "error"
})
return false
}
})
},
/**
* @description: 更新权利人信息
* @param {*} val
* @author: renchao
*/
upDateQlrxxList (val) {
if (!_.isEqual(val, this.ruleForm.qlrList)) {
this.ruleForm.qlrList = _.cloneDeep(val);
this.czrOptions = this.ruleForm.qlrList;
});
} else {
that.$message({
showClose: true,
message: "请输入红框内的相关信息!",
type: "error",
});
return false;
}
this.num = 0
this.ruleForm.qlrList.forEach(item => {
if (item.id == this.czr) {
this.num++
}
})
if (this.num == 0) {
this.czr = ''
});
},
/**
* @description: 更新权利人信息
* @param {*} val
* @author: renchao
*/
upDateQlrxxList(val) {
if (!_.isEqual(val, this.ruleForm.qlrList)) {
this.ruleForm.qlrList = _.cloneDeep(val);
this.czrOptions = this.ruleForm.qlrList;
}
this.num = 0;
this.ruleForm.qlrList.forEach((item) => {
if (item.id == this.czr) {
this.num++;
}
},
// 是否持证人变化
/**
* @description: 是否持证人变化
* @param {*} val
* @author: renchao
*/
updaterow () {
});
if (this.num == 0) {
this.czr = "";
},
/**
* @description: 更新义务人信息
* @param {*} val
* @author: renchao
*/
upDateYwrxxList (val) {
if (!_.isEqual(val, this.ruleForm.ywrList)) {
this.ruleForm.ywrList = _.cloneDeep(val);
}
},
/**
* @description: compare
* @author: renchao
*/
compare () {
this.$popupDialog(
this.ruleForm.qlxx.qllxmc,
"registerBook/comparison",
{
bsmQlxx: this.ruleForm.qlxx.bsmQlxx,
dqqllx: "FDCQ2",
},
"80%",
true
);
},
}
}
}
},
// 是否持证人变化
/**
* @description: 是否持证人变化
* @param {*} val
* @author: renchao
*/
updaterow() {
this.czr = "";
},
/**
* @description: 更新义务人信息
* @param {*} val
* @author: renchao
*/
upDateYwrxxList(val) {
if (!_.isEqual(val, this.ruleForm.ywrList)) {
this.ruleForm.ywrList = _.cloneDeep(val);
}
},
/**
* @description: compare
* @author: renchao
*/
compare() {
this.$popupDialog(
this.ruleForm.qlxx.qllxmc,
"registerBook/comparison",
{
bsmQlxx: this.ruleForm.qlxx.bsmQlxx,
dqqllx: "FDCQ2",
},
"80%",
true
);
},
},
};
</script>
<style scoped lang="scss">
@import "~@/styles/public.scss";
@import "~@/styles/slxx/slxx.scss";
@import "~@/styles/public.scss";
@import "~@/styles/slxx/slxx.scss";
</style>
......
......@@ -3,90 +3,108 @@
* @param {*} data
* @author: renchao
*/
export function formValidate (djlx) {
switch (djlx) {
case "100":
return fristValidate();
case "200":
return transferValidate();
case "300":
return changeValidate();
case "400":
return logoutValidate();
case "500":
return riviseValidate();
case "901":
return renewalValidate();
case "902":
return replaceValidate();
}
}
/**
* @description: 首次登记效验
* @param {*} data
* @author: renchao
*/
export function fristValidate () {
var formRules={
'diyaq.djyy': [
{ required: true, message: '请输入登记原因', trigger: 'blur' }
]
export function formValidate (djlx,dyfs) {
var formRules={
'diyaq.djyy': [
{ required: false, message: '请输入登记原因', trigger: 'blur' }
],
'diyaq.zxdyyy': [
{ required: false, message: '请输入注销登记原因', trigger: 'blur' }
],
'diyaq.zwlxqssj': [
{ required: false, message: '请选择债务履行起始时间', trigger: 'blur' }
],
'diyaq.zwlxjssj': [
{ required: false, message: '请选择债务履行起始时间', trigger: 'blur' }
],
'diyaq.bdbzzqse': [
{ required: false, message: '请输入被担保主债权数额', trigger: 'blur' }
],
'diyaq.zgzqse': [
{ required: false, message: '请输入最高债权额', trigger: 'blur' }
],
'diyaq.sfczjzhxz': [
{ required: false, message: '请输入最高债权额', trigger: 'blur' }
]
}
if (djlx=="400") {
formRules["diyaq.zxdyyy"][0].required=true;
}else{
if(dyfs=="1"){
formRules["diyaq.bdbzzqse"][0].required=true;
}else{
formRules["diyaq.zgzqse"][0].required=true;
}
formRules["diyaq.zwlxqssj"][0].required=true;
formRules["diyaq.zwlxjssj"][0].required=true;
formRules["diyaq.sfczjzhxz"][0].required=true;
formRules["diyaq.djyy"][0].required=true;
}
console.log(formRules)
return formRules;
}
return formRules;
}
/**
* @description: 转移登记效验
* @param {*} data
* @author: renchao
*/
export function transferValidate (data) {
}
/**
* @description: 变更登记效验
* @param {*} data
* @author: renchao
*/
export function changeValidate (data) {
}
/**
* @description: 注销登记效验
* @param {*} data
* @author: renchao
*/
export function logoutValidate (data) {
}
/**
* @description: 更正登记效验
* @param {*} data
* @author: renchao
*/
export function riviseValidate (data) {
}
/**
* @description: 补证登记效验
* @param {*} data
* @author: renchao
*/
export function renewalValidate (data) {
}
/**
* @description: 换证登记效验
* @param {*} data
* @author: renchao
*/
export function replaceValidate (data) {
}
\ No newline at end of file
/**
* @description: 首次登记效验
* @param {*} data
* @author: renchao
*/
export function fristValidate (formRules,dyfs) {
return formRules;
}
/**
* @description: 转移登记效验
* @param {*} data
* @author: renchao
*/
export function transferValidate (data) {
}
/**
* @description: 变更登记效验
* @param {*} data
* @author: renchao
*/
export function changeValidate (data) {
}
/**
* @description: 注销登记效验
* @param {*} data
* @author: renchao
*/
export function logoutValidate (data) {
}
/**
* @description: 更正登记效验
* @param {*} data
* @author: renchao
*/
export function riviseValidate (data) {
}
/**
* @description: 补证登记效验
* @param {*} data
* @author: renchao
*/
export function renewalValidate (data) {
}
/**
* @description: 换证登记效验
* @param {*} data
* @author: renchao
*/
export function replaceValidate (data) {
}
\ No newline at end of file
......
<!--
* @Description:补充材料通知书
* @Autor: renchao
* @LastEditTime: 2024-02-26 09:04:04
* @LastEditTime: 2024-03-27 11:24:03
-->
<template>
<div class="clmlmx-box">
......@@ -36,7 +36,7 @@
selectList: [],
loading: false,
sortable: null,
newDate: getNewDate(),
newDate: getNewDate(),
column: [
{
type: 'selection',
......@@ -134,22 +134,20 @@
}
getPrintTemplateByCode({ tmpno: 'bdcdjbccltts' }).then(res => {
if (res.code === 200) {
console.log("this.selectListssssssssss",this.selectList);
getPrintSupplementalMaterials(this.formData.bsmSldy, this.selectList).then(infoRes => {
this.loading = false
if (infoRes.code === 200) {
console.log("infoRes.resultsssssssssss",infoRes.result);
if (infoRes.result.fileList && infoRes.result.fileList.length > 0) {
infoRes.result.fileList.forEach((it, index) => {
let key = index + 1
this.$set(infoRes.result, "file" + key, it.sjmc)
this.$set(infoRes.result, "file" + key + 'ys', it.ys)
this.$set(infoRes.result, "file" + key + 'lx', it.sjlx==1?"原件":"复印件")
this.$set(infoRes.result, "file" + key + 'lx', it.sjlx == 1 ? "原件" : "复印件")
})
}
infoRes.result.nownian = this.newDate.split(' ')[0].split('年')[0]
infoRes.result.nowyue = this.newDate.slice(5,7)
infoRes.result.nowri = this.newDate.slice(8,10)
infoRes.result.nownian = this.newDate.split(' ')[0].split('年')[0]
infoRes.result.nowyue = this.newDate.slice(5, 7)
infoRes.result.nowri = this.newDate.slice(8, 10)
let date = infoRes.result.sqrq
infoRes.result.sqnian = date.split(' ')[0].split('-')[0]
infoRes.result.sqyue = date.split(' ')[0].split('-')[1]
......
......@@ -77,6 +77,7 @@
this.ruleForm = {
cllx: "",
clmc: "",
clbm: ""
}
},
/**
......@@ -90,6 +91,7 @@
this.ruleForm = {
cllx: "",
clmc: "",
clbm: ""
}
this.$emit("input", false);
} else {
......
<!--
* @Description:
* @Autor: renchao
* @LastEditTime: 2023-10-24 17:18:02
* @LastEditTime: 2024-03-27 16:38:39
-->
<template>
<div class="clxx">
......@@ -247,7 +247,8 @@
let obj = {
bsmCompany: this.formData.bsmCompany,
clmc: data.clmc,
cllx: data.cllx
cllx: data.cllx,
clbm: data.clbm
};
addCompanyMaterial(obj).then(async (res) => {
if (res.code == 200) {
......@@ -374,7 +375,7 @@
display: flex;
.menu-tree {
width: 20%;
width: 30%;
min-width: 160px;
height: 100%;
margin-right: 10px;
......@@ -405,7 +406,8 @@
border-radius: 6px;
line-height: 20px;
transition: all 0.3s;
padding: 8px 0;
padding: 3px 0;
word-wrap: break-word;
}
.child:hover {
......@@ -421,7 +423,7 @@
}
.clyl-img {
width: 75%;
width: 70%;
height: 100%;
background: #f3f4f7;
margin: 0 auto;
......
......@@ -100,7 +100,7 @@
};
import store from '@/store/index.js'
import { addQy, update, addYh } from "@/api/xxba.js"
import clxx from './clxx/index.vue'
import clxx from '../../components/clxx/index.vue'
export default {
props: {
formData: {
......
<template>
<div style="height:650px">
<el-tabs v-model="activeName" @tab-click="handleClick">
<el-tab-pane label="银行信息" name="1"></el-tab-pane>
<el-tab-pane label="企业信息" name="1"></el-tab-pane>
<el-tab-pane label="材料信息" v-if="formData.isAdd==2" name="2"></el-tab-pane>
</el-tabs>
<el-form ref="ruleForm" :model="ruleForm" label-width="100px" style="height:90%" v-if="activeName==1" :rules="rules">
<div style="height:90%">
<el-row>
<el-col :span="12">
<el-form-item label="银行名称:" prop="qymc">
<el-form-item label="企业名称:" prop="qymc">
<el-input v-model="ruleForm.qymc"></el-input>
</el-form-item>
</el-col>
......@@ -100,7 +100,7 @@
};
import store from '@/store/index.js'
import { addQy, update, addYh } from "@/api/xxba.js"
import clxx from './clxx/index.vue'
import clxx from '../../components/clxx/index.vue'
export default {
props: {
formData: {
......@@ -149,7 +149,7 @@
],
rules: {
qymc: [
{ required: true, message: '银行名称不能为空', trigger: 'blur' }
{ required: true, message: '企业名称不能为空', trigger: 'blur' }
],
dh: [
{ required: true, validator: checkPhone, trigger: ["blur"] },
......
<!--
* @Description:
* @Autor: renchao
* @LastEditTime: 2023-09-15 15:50:26
-->
<template>
<dialogBox title="新建材料信息" width="20%" isMain v-model="myValue" @closeDialog="closeDialog" @submitForm="handleSubmit"
:isFullscreen="false">
<el-form :model="ruleForm" :rules="rules" ref="ruleForm" label-width="80px">
<el-row>
<el-col :span="24">
<el-form-item label="材料类型" prop="cllx">
<el-select v-model="ruleForm.cllx" class="width100" placeholder="请选择">
<el-option v-for="item in cllxList" :key="item.dcode" :label="item.dname" :value="item.dcode">
</el-option>
</el-select>
</el-form-item>
</el-col>
</el-row>
<el-row :gutter="20">
<el-col :span="24">
<el-form-item label="材料名称" prop="clmc">
<el-input v-model="ruleForm.clmc"></el-input>
</el-form-item>
</el-col>
</el-row>
<el-row :gutter="20">
<el-col :span="24">
<el-form-item label="材料编码" prop="clbm">
<el-input v-model="ruleForm.clbm"></el-input>
</el-form-item>
</el-col>
</el-row>
</el-form>
</dialogBox>
</template>
<script>
import store from '@/store/index.js'
export default {
props: {
value: { type: Boolean, default: false },
},
data () {
return {
cllxList: store.getters.dictData['A40'],
myValue: this.value,
ruleForm: {
cllx: "",
clmc: "",
clbm: ""
},
rules: {
cllx: [
{ required: true, message: '请选择材料类型', trigger: 'change' }
],
clmc: [
{ required: true, message: '请输入材料名称', trigger: 'blur' }
],
clbm: [
{ required: true, message: '请输入材料编码', trigger: 'blur' }
],
}
}
},
watch: {
value (val) {
this.myValue = val;
},
},
methods: {
/**
* @description: closeDialog
* @author: renchao
*/
closeDialog () {
this.$emit("input", false);
this.ruleForm = {
cllx: "",
clmc: "",
}
},
/**
* @description: handleSubmit
* @author: renchao
*/
handleSubmit () {
this.$refs['ruleForm'].validate((valid) => {
if (valid) {
this.$parent.addSave(this.ruleForm);
this.ruleForm = {
cllx: "",
clmc: "",
}
this.$emit("input", false);
} else {
return false;
}
})
}
}
};
</script>
<style scoped lang="scss">
.submit-button {
text-align: center;
height: 52px;
padding-top: 10px;
background-color: #fff;
}
</style>
<!--
* @Description:
* @Autor: renchao
* @LastEditTime: 2023-09-15 15:38:53
-->
<template>
<div class="clmlmx-box">
<lb-table :column="column" :key="key" row-key="bsmMaterial" ref="listTable" :heightNumSetting="true" :calcHeight="500" :pagination="false"
:data="tableData">
</lb-table>
<div class="text-center">
<el-button @click="handleCancel">取消</el-button>
<el-button type="primary" @click="handleSubmit" :loading="loading">保存</el-button>
</div>
</div>
</template>
<script>
import store from '@/store/index.js'
import Sortable from 'sortablejs'
import { ywPopupCacel } from "@/utils/popup.js";
import { editCompanyMaterialList } from "@/api/company.js";
export default {
props: {
formData: {
type: Object,
default: () => {
return {}
}
}
},
data () {
return {
loading: false,
sortable: null,
column: [
{
label: "材料名称",
render: (h, scope) => {
return (
<el-input value={scope.row.clmc} onInput={(val) => { scope.row.clmc = val }}></el-input>
)
}
},
{
label: "材料编码",
render: (h, scope) => {
return (
<el-input value={scope.row.clbm} onInput={(val) => { scope.row.clbm = val }}></el-input>
)
}
},
{
label: "材料类型",
width: "110",
render: (h, scope) => {
return (
<el-select value={scope.row.cllx}
onChange={(val) => { scope.row.cllx = val }}>
{
store.getters.dictData['A40'].map(option => {
return (
<el-option label={option.dname} value={option.dcode}></el-option>
)
})
}
</el-select>
)
}
},
{
label: "页数",
width: "80",
render: (h, scope) => {
if (scope.row.count && scope.row.count > 0) {
return (
<div>
<span>{scope.row.count}</span>
</div>
);
} else {
return (
<div>
<span>0</span>
</div>
);
}
},
},
{
label: "操作",
width: "100",
render: (h, scope) => {
return (
<el-button
type="text"
icon="el-icon-delete"
disabled={scope.row.count != 0}
onClick={() => {
this.handleDelete(scope.$index, scope.row);
}}
>
删除
</el-button>
)
}
}
],
key: 0,
tableData: []
}
},
mounted () {
this.initSort()
this.tableData = _.cloneDeep(this.formData.data)
},
beforeDestroy () {
if (this.sortable) {
this.sortable.destroy();
}
},
watch: {
'formData.data': {
handler: function (val, oldVal) {
this.tableData = _.cloneDeep(val)
},
immediate: true,
deep: true
}
},
methods: {
handleCancel () {
ywPopupCacel()
},
handleSubmit () {
this.loading = true
store.dispatch('user/reWorkFresh', false)
editCompanyMaterialList(this.tableData, this.formData.bsmCompany).then(res => {
this.loading = false
if (res.code == 200) {
this.$message({
message: '保存成功',
type: 'success'
})
store.dispatch('user/reWorkFresh', true)
ywPopupCacel()
}
}).catch(() => {
this.loading = false
})
},
/**
* @description: 材料目录删除
* @param {*} index
* @param {*} row
* @author: renchao
*/
handleDelete (index, row) {
this.$confirm('此操作将永久删除该 是否继续?', '提示', {
confirmButtonText: '确定',
cancelButtonText: '取消',
type: 'warning'
}).then(() => {
this.tableData.splice(index, 1);
}).catch(() => {
this.$message({
type: 'info',
message: '已取消删除'
})
})
},
initSort () {
const el = this.$refs.listTable.$el.querySelectorAll('.el-table__body-wrapper > table > tbody')[0]
this.sortable = Sortable.create(el, {
ghostClass: 'sortable-ghost',
setData: function (dataTransfer) {
dataTransfer.setData('Text', '')
},
onEnd: evt => {
const targetRow = this.tableData.splice(evt.oldIndex, 1)[0];
this.tableData.splice(evt.newIndex, 0, targetRow);
}
})
}
}
}
</script>
<style scoped lang='scss'>
@import "~@/styles/mixin.scss";
.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;
}
}
</style>
<!--
* @Description:
* @Autor: renchao
* @LastEditTime: 2023-12-15 14:42:21
-->
<template>
<div class="rlPopup">
<div class="prev handle-btn" v-if="!isScan" @click="prev()">
<i class="el-icon-arrow-left"></i>
</div>
<div class="next handle-btn" v-if="!isScan" @click="next()">
<i class="el-icon-arrow-right"></i>
</div>
<div class="img-list-wrap" v-Loading="loading">
<img id="photo" src="" v-show="isScan && this.BASE_API.gaopaiyi=='jy'" alt="高拍仪捷宇">
<img src="http://127.0.0.1:38088/video=stream&camidx=0" v-if="isScan && this.BASE_API.gaopaiyi=='lt'" alt="高拍仪良田">
<div v-for="(img, i) in previewImg.imgList" :key="i" v-else>
<photo-zoom :url="img.fileurl" :bigWidth="165" v-if="i === previewImg.index" :scale="2"
overlayStyle="width: 100%;height:100%">
</photo-zoom>
</div>
</div>
<!--缩略图-->
<div class="thumb-wrap">
<div class="thumb-wrap-button">
<el-button type="primary" @click="clickImage" v-if="previewImg.imgList.length>0">(放大) 显示(缩小)</el-button>
<el-upload class="fileUpdate" ref="upload" :key="key" action="" :show-file-list="false" :multiple="true" :auto-upload="false"
:on-change="handleChange"
accept=".JPG, .PNG, .JPEG,.jpg, .png, .jpeg">
<el-button icon="el-icon-upload" type="primary" :loading="upDateloading" v-if="ableOperation">上传</el-button>
</el-upload>
<!-- 左移右移 -->
<el-button type="primary" @click="handleMove('left')" v-if="ableOperation && thumbnailImages.length>0">左移</el-button>
<el-button type="primary" @click="handleMove('right')" v-if="ableOperation && thumbnailImages.length>0">右移</el-button>
<el-button type="primary" icon="el-icon-delete-solid" @click="handleDelete"
v-if="thumbnailImages.length>0 && ableOperation">删除</el-button>
<div v-if="ableOperation" class="pl-5">
<el-button type="primary" @click="handleOpenScan" v-if="ableOperation" :loading="loading">{{scanTitle}}</el-button>
<el-button type="primary" @click="handleViewScan" v-if="isScan && ableOperation">拍照</el-button>
</div>
</div>
<ul>
<li v-for="(img, index) in thumbnailImages" :key="index" :class="{ active: previewImg.index === index }"
@click="showCurrent(index)">
<img :src="img.fileurl">
</li>
</ul>
</div>
<!-- 点开后的视图 -->
<publicPicture v-if="showViewer" :url-list="allLi" :initialIndex="initialIndex" @close-viewer="closeViewer">
</publicPicture>
</div>
</template>
<script>
import PhotoZoom from '@/components/PhotoZoom'
import { getAltimeterInfo, getUuid } from '@/utils/operation.js'
import { uploadBatch, deleteFile, move, uploadSjClmx } from "@/api/company.js"
import publicPicture from '@/components/publicPicture/index.vue'
export default {
name: 'PreviewImage',
props: {
previewImg: {
type: Object,
default: () => { }
},
ableOperation: {
type: Boolean,
default: true
}
},
components: {
PhotoZoom,
publicPicture
},
data () {
return {
upDateloading: false,
loading: false,
key: 0,
isScan: false,
// 打开高拍仪
scanTitle: '打开高拍仪',
transform: {
scale: 1,
degree: 0
},
maxFileLength: 0,
// 缩略图
thumbnailImages: [],
showViewer: false,
initialIndex: 0,
allLi: [],
webSocket: null
}
},
watch: {
previewImg: {
handler (newValue, oldValue) {
if (newValue.imgList && newValue.imgList.length > 0) {
this.allLi = _.cloneDeep(newValue.imgList).map(item => item.fileurl)
this.thumbnailImages = newValue.imgList
} else {
this.allLi = []
this.thumbnailImages = []
}
},
deep: true,
immediate: true
}
},
created () {
this.maxLength = 0;
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: {
/**
* @description: 打开高拍仪
* @author: renchao
*/
handleOpenScan () {
let that = this
this.isScan = !this.isScan
if (this.isScan) {
this.loading = true
this.$message({
message: '正在启动程序请稍等',
type: 'success'
})
setTimeout(() => {
this.scanTitle = '关闭高拍仪'
this.loading = false
}, 3000)
} else {
this.scanTitle = '打开高拍仪'
}
if (this.BASE_API.gaopaiyi == 'jy') {
let webSocket = new WebSocket('ws://localhost:1818');
this.webSocket = webSocket
webSocket.onopen = function (event) {
webSocket.send('bStartPlay')
webSocket.send('vSetPreviewRect(1600,1200)')
}
webSocket.onmessage = function (event) {
let begin_data = "data:image/jpeg;base64,";
document.getElementById('photo').src = begin_data + event.data;
if (event.data.indexOf('BeginsGetBase64') >= 0) {
let blob = that.dataURLtoBlob('data:image/png;base64,' + event.data.replace('BeginsGetBase64', '').replace('EndsGetBase64', ''));
let file = that.blobToFile(blob);
var formData = new FormData();
formData.append('file', file)
if (that.previewImg.imgList.length > 0) {
formData.append("index", that.previewImg.imgList[that.previewImg.index].sxh);
}
uploadSjClmx(formData, that.previewImg.bsmMaterial).then((res) => {
if (res.code == 200) {
that.$emit('updateList', { children: res.result, bsmMaterial: that.previewImg.bsmMaterial })
that.$message({
message: '上传成功!',
type: 'success'
})
}
})
}
}
}
},
/**
* @description: 左右移动
* @param {*} direction
* @author: renchao
*/
handleMove (direction) {
move(this.previewImg.imgList[this.previewImg.index].bsmFile, direction).then(res => {
if (res.code == 200) {
if (direction == 'left') {
this.previewImg.index = this.previewImg.index - 1
} else {
this.previewImg.index = this.previewImg.index + 1
}
this.initialIndex = this.previewImg.index
this.$emit('updateList', { children: res.result, bsmMaterial: this.previewImg.bsmMaterial })
this.$message({
message: '移动成功!',
type: 'success'
})
} else {
this.$message.error(res.message);
}
})
},
/**
* @description: 拍照
* @author: renchao
*/
dataURLtoBlob (base64String) {
const arr = base64String.split(',');
if (arr.length !== 2) {
throw new Error('Invalid Base64 format');
}
const mime = arr[0].match(/:(.*?);/)[1];
if (!mime) {
throw new Error('Cannot retrieve MIME type');
}
const bstr = atob(arr[1]);
const n = bstr.length;
const u8arr = new Uint8Array(n);
for (let i = 0; i < n; i++) {
u8arr[i] = bstr.charCodeAt(i);
}
return new Blob([u8arr], { type: mime });
},
blobToFile (blob) {
let name = getUuid(8) + '.jpg'
const file = new File([blob], name);
return file;
},
handleViewScan () {
if (this.BASE_API.gaopaiyi == 'jy') {
this.webSocket.send('sGetBase64');
return
}
getAltimeterInfo().then(res => {
let blob = dataURLtoBlob('data:image/png;base64,' + res.data.photoBase64);
let file = blobToFile(blob);
var formData = new FormData();
formData.append('file', file)
if (this.previewImg.imgList.length > 0) {
formData.append("index", this.previewImg.imgList[this.previewImg.index].sxh);
}
uploadSjClmx(formData, this.previewImg.bsmMaterial).then((res) => {
if (res.code == 200) {
this.$emit('updateList', { children: res.result, bsmMaterial: this.previewImg.bsmMaterial })
this.$message({
message: '上传成功!',
type: 'success'
})
}
})
})
},
/**
* @description: prev
* @author: renchao
*/
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
}
},
/**
* @description: next
* @author: renchao
*/
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
}
},
/**
* @description: showCurrent
* @param {*} index
* @author: renchao
*/
showCurrent (index) {
this.previewImg.index = index
this.initialIndex = index
},
/**
* @description: closeViewer
* @author: renchao
*/
closeViewer () {
this.showViewer = false
},
/**
* @description: clickImage
* @author: renchao
*/
clickImage () {
this.showViewer = true
},
/**
* @description: handleChange
* @param {*} file
* @param {*} files
* @author: renchao
*/
async handleChange (file, fileList) {
let length = fileList.length;
this.maxFileLength = Math.max(length, this.maxFileLength)
var formData = new FormData();
setTimeout(() => {
if (this.maxFileLength !== length) {
return
}
let num = 0, max = 0;
const isLt5M = file.size / 1024 / 1024 < 5;
fileList.forEach(item => {
if (!isLt5M) {
max++
}
if (!['image/jpeg', 'image/png', 'image/jpg', 'image/gif'].includes(item.raw.type)) {
num++
} else {
formData.append('file', item.raw)
}
})
if (num >= 1) {
this.$message.error("请选择jpeg/png/jpg/bmp/gif格式的图片后重试")
// 移除不支持的文件类型
this.key++
return;
}
if (max >= 1) {
this.$message.error('上传图片大小不能超过 5MB!');
this.key++
return;
}
this.upDateloading = true
formData.append("bsmMaterial", this.previewImg.bsmMaterial);
if (this.previewImg.imgList.length > 0) {
formData.append("index", this.previewImg.imgList[this.previewImg.index].sxh);
}
uploadBatch(formData).then((res) => {
if (res.code == 200) {
this.$emit('updateList', { children: res.result, bsmMaterial: this.previewImg.bsmMaterial })
this.$message({
message: '上传成功!',
type: 'success'
})
this.upDateloading = false
this.$refs.upload.clearFiles();
this.maxFileLength = 0
}
})
}, 0)
},
/**
* @description: handleDelete
* @author: renchao
*/
handleDelete () {
let that = this
this.$confirm('此操作将永久删除, 是否继续?', '提示', {
confirmButtonText: '确定',
cancelButtonText: '取消',
type: 'warning'
}).then(async () => {
let bsmFile = this.previewImg.imgList[this.previewImg.index].bsmFile
let bsmMaterial = this.previewImg.imgList[this.previewImg.index].bsmMaterial
this.previewImg.imgList = this.previewImg.imgList.filter(item => item.bsmFile != bsmFile)
deleteFile(bsmFile).then(res => {
if (res.code == 200) {
that.$emit('updateList', { children: this.previewImg.imgList, bsmMaterial: bsmMaterial })
that.initialIndex = that.previewImg.index
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: #ccc;
border-radius: 50%;
cursor: pointer;
text-align: center;
transition: all 0.3s;
i {
font-size: 24px;
}
}
.handle-btn:hover {
background-color: rgb(185, 183, 183);
}
.prev {
left: 1%;
}
.next {
right: 1%;
}
.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;
img {
display: block;
object-fit: scale-down;
transition: all 0.3s;
width: 100%;
height: 100%;
}
}
.thumb-wrap {
&-button {
display: flex;
justify-content: center;
.fileUpdate {
margin: 0 10px;
}
}
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;
}
}
}
</style>
<style>
.zoom-on-hover {
position: relative;
overflow: hidden;
}
.zoom-on-hover .normal {
width: 100%;
}
.zoom-on-hover .zoom {
position: absolute;
opacity: 0;
transform-origin: top left;
}
.zoom-on-hover.zoomed .zoom {
opacity: 1;
}
.zoom-on-hover.zoomed .normal {
opacity: 0;
}
</style>
<!--
* @Description:
* @Autor: renchao
* @LastEditTime: 2023-10-24 17:18:02
-->
<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" v-if="tableData.length > 0">申请材料目录</el-button>
<div class="item">
材料目录({{ tableData.length }})
<div style="margin-top: 10px">
<div
style="
text-align: center;
line-height: 20px;
color: black;
font-size: 14px;
"
v-if="tableData.length == 0">
暂无数据
</div>
<div
v-for="(item, index) in tableData"
:key="item.bsmMaterial"
:class="['child', treeCheckId == item.bsmMaterial ? 'checked' : '']"
@click="treeClick(item, index)">
{{ item.clmc }}
<span class="cl_number" :key="key" v-if="item.count">({{ item.count }})</span>
<span class="cl_number" :key="key" v-else>(0)</span>
</div>
</div>
</div>
<el-button
type="primary"
native-type="submit"
style="width: 100%"
@click="handleAdd()">新增</el-button>
</div>
<image-preview
ref="imageRef"
:key="imgKey"
v-if="tableData.length > 0"
:previewImg="previewImg"
@updateList="updateList"
@nextPriview="nextPriview"
@prevPriview="prevPriview" />
</div>
</div>
<clxxAddDialog v-model="isDialog" />
</div>
</template>
<script>
import store from '@/store/index.js'
import { ywPopupDialog } from "@/utils/popup.js";
import imagePreview from "./dialog/imagePreview.vue";
import clxxAddDialog from "./dialog/clxxAddDialog.vue";
import clxxDetailDialog from "./dialog/clxxDetailDialog.vue";
import { getCompanyMaterialList, addCompanyMaterial, getFileListByBsmMaterial } from "@/api/company.js";
export default {
components: { clxxAddDialog, imagePreview, clxxDetailDialog },
props: {
formData: {
type: Object,
default: () => {
return {}
}
}
},
data () {
return {
imgKey: 0,
isDialog: false,
iclass: "",
// 材料目录选中
treeCheckIndex: 0,
treeCheckId: "",
key: 0,
tableData: [],
previewImg: {
bsmMaterial: "",
index: 0,
selectedIndex: 0,
imgList: []
}
}
},
computed: {
workFresh () {
return store.state.user.workFresh
}
},
watch: {
workFresh: {
handler (newValue, oldValue) {
this.clmlInitList(1)
},
deep: true,
immediate: true
}
},
created () {
this.clmlInitList(1)
},
methods: {
/**
* @description: 自动预览
* @author: renchao
*/
nextPriview () {
if (this.treeCheckIndex < this.tableData.length) {
this.treeCheckIndex++;
if (this.tableData[this.treeCheckIndex]) {
this.treeCheckId = this.tableData[this.treeCheckIndex].bsmMaterial;
// 判断页数
let ys = this.tableData[this.treeCheckIndex].ys
this.previewImg.index = 0;
// 获取材料明细
if (ys > 0) {
getFileListByBsmMaterial(this.treeCheckId).then(res => {
this.previewImg.imgList = res.result ? res.result : []
})
} else {
this.previewImg.imgList = []
}
this.previewImg.bsmMaterial = this.tableData[this.treeCheckIndex].bsmMaterial;
} else {
this.$message.error('没有最后一张了');
}
}
},
/**
* @description: prevPriview
* @author: renchao
*/
prevPriview () {
if (this.treeCheckIndex >= 1) {
this.treeCheckIndex--;
this.treeCheckId = this.tableData[this.treeCheckIndex].bsmMaterial;
// 判断页数
let ys = this.tableData[this.treeCheckIndex].ys
if (ys > 0) {
getFileListByBsmMaterial(this.treeCheckId).then(res => {
this.previewImg.imgList = res.result ? res.result : []
this.previewImg.index = this.previewImg.imgList.length - 1;
})
} else {
this.previewImg.imgList = [];
this.previewImg.index = 0
}
this.previewImg.bsmMaterial = this.tableData[this.treeCheckIndex].bsmMaterial;
} else {
this.$message.error('没有第一张了');
}
},
/**
* @description: 材料目录明细初始化
* @param {*} type
* @author: renchao
*/
clmlInitList (type) {
// 1:列表初始化 2:新增材料
return new Promise((resolve) => {
getCompanyMaterialList(this.formData.bsmCompany).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 if (type == 2) {
//新增材料后刷新列表焦点置于新增的对象上
this.treeClick(
this.tableData[this.tableData.length - 1],
this.tableData.length - 1
);
}
}
} else {
this.$message.error(res.message);
}
})
})
},
/**
* @description: setChecked
* @param {*} item
* @author: renchao
*/
setChecked (item) {
this.treeCheckId = item.bsmMaterial;
this.title = item.sjmc;
this.titleYs = 1;
this.titleNum = item.children.length;
this.previewImg.imgList = item.children;
this.previewImg.bsmMaterial = item.bsmMaterial;
},
/**
* @description: updateList
* @param {*} val
* @author: renchao
*/
updateList (val) {
let that = this;
if (val.children.length != 0) {
//删除最后一张图片时 val=null
this.tableData.forEach((item) => {
if (item.bsmMaterial == val.bsmMaterial) {
item.count = val.children.length
}
});
this.previewImg.imgList = _.cloneDeep(val.children);
if (this.previewImg.index == this.previewImg.imgList.length) {
this.previewImg.index = this.previewImg.index - 1;
}
this.key++
} else {
this.previewImg.imgList = [];
this.tableData.forEach((item, index) => {
if (this.treeCheckId == item.bsmMaterial) {
item.count = 0;
that.treeCheckIndex = index;
}
})
}
},
/**
* @description: 添加材料目录
* @author: renchao
*/
handleAdd () {
this.isDialog = true;
},
/**
* @description: 新增弹窗保存
* @param {*} data
* @author: renchao
*/
addSave (data) {
let obj = {
bsmCompany: this.formData.bsmCompany,
clmc: data.clmc,
cllx: data.cllx
};
addCompanyMaterial(obj).then(async (res) => {
if (res.code == 200) {
let res = await this.clmlInitList(2);
if (res == 200)
this.$message({
message: "新增成功",
type: "success"
})
}
})
},
/**
* @description: 材料目录点击选中
* @param {*} item
* @param {*} index
* @author: renchao
*/
treeClick (item, index) {
this.previewImg.index = 0;
this.treeCheckId = item?.bsmMaterial;
this.treeCheckIndex = index;
getFileListByBsmMaterial(item.bsmMaterial).then(res => {
this.previewImg.imgList = res.result ? res.result : []
})
this.previewImg.bsmMaterial = item?.bsmMaterial;
if (this.$refs.imageRef) {
this.$refs.imageRef.initialIndex = 0
}
this.imgKey++
},
/**
* @description: 小图片点击
* @param {*} item
* @param {*} index
* @author: renchao
*/
imgClick (item, index) {
this.showImg = item;
this.titleYs = index + 1;
},
//查看明细
async viewDetail () {
await this.clmlInitList();
store.dispatch("user/reWorkFresh", false);
ywPopupDialog("申请材料目录", "xxba/components/clxx/dialog/clxxDetailDialog", {
data: this.tableData,
bsmCompany: this.formData.bsmCompany
}, "60%", true, false)
},
//设置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;
}
.cl_number {
float: right;
}
.clxx {
width: 100%;
height: 94%;
display: flex;
padding-left: 5px;
.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;
}
}
}
.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;
}
}
}
}
</style>
......@@ -31,7 +31,7 @@
</el-select>
</el-form-item>
</el-col>
<el-col :span="5">
<el-col :span="6">
<el-form-item label="权利类型">
<el-select
v-model="queryForm.qllx"
......@@ -79,13 +79,8 @@
</el-input>
</el-form-item>
</el-col>
<el-col :span="3" class="btnColRight">
<el-form-item>
<el-button
type="primary"
native-type="submit"
@click="handleSearch">查询</el-button>
<el-col :span="2" class="btnColRight">
<el-form-item>
<el-button @click="moreQueryClick">高级查询</el-button>
</el-form-item>
</el-col>
......@@ -101,7 +96,7 @@
</el-input>
</el-form-item>
</el-col>
<el-col :span="5">
<el-col :span="6">
<el-form-item label="申请人">
<el-input
placeholder="如需要模糊查询,前后输入%"
......@@ -121,7 +116,7 @@
</el-input>
</el-form-item>
</el-col>
<el-col :span="9">
<el-col :span="6">
<el-form-item label="坐落">
<el-input
placeholder="如需要模糊查询,前后输入%"
......@@ -131,6 +126,14 @@
</el-input>
</el-form-item>
</el-col>
<el-col :span="2" class="btnColRight">
<el-form-item>
<el-button
type="primary"
native-type="submit"
@click="handleSearch">查询</el-button>
</el-form-item>
</el-col>
</el-row>
<el-row class="advanced-search">
<span>搜索条件:</span>
......
......@@ -32,7 +32,7 @@
</el-select>
</el-form-item>
</el-col>
<el-col :span="5">
<el-col :span="6">
<el-form-item label="权利类型">
<el-select
v-model="queryForm.qllx"
......@@ -81,12 +81,8 @@
</el-form-item>
</el-col>
<el-col :span="3" class="btnColRight">
<el-col :span="2" class="btnColRight">
<el-form-item>
<el-button
type="primary"
native-type="submit"
@click="handleSearch">查询</el-button>
<el-button @click="moreQueryClick">高级查询</el-button>
</el-form-item>
</el-col>
......@@ -102,7 +98,7 @@
</el-input>
</el-form-item>
</el-col>
<el-col :span="5">
<el-col :span="6">
<el-form-item label="申请人">
<el-input
placeholder="如需要模糊查询,前后输入%"
......@@ -122,7 +118,7 @@
</el-input>
</el-form-item>
</el-col>
<el-col :span="9">
<el-col :span="6">
<el-form-item label="坐落">
<el-input
placeholder="如需要模糊查询,前后输入%"
......@@ -132,6 +128,14 @@
</el-input>
</el-form-item>
</el-col>
<el-col :span="2" class="btnColRight">
<el-form-item>
<el-button
type="primary"
native-type="submit"
@click="handleSearch">查询</el-button>
</el-form-item>
</el-col>
</el-row>
<el-row class="advanced-search">
<span>搜索条件:</span>
......