Merge branch 'dev' of http://yun.pashanhoo.com:9090/bdc/bdcdj-web into dev
Showing
71 changed files
with
367 additions
and
19895 deletions
| 1 | <!-- | ||
| 2 | * @Description: 功能:流程图 | ||
| 3 | * @Autor: renchao | ||
| 4 | * @LastEditTime: 2023-05-17 10:40:57 | ||
| 5 | --> | ||
| 6 | <template> | ||
| 7 | <div class='flowChart'> | ||
| 8 | <img :src="formData" alt=""> | ||
| 9 | </div> | ||
| 10 | </template> | ||
| 11 | <script> | ||
| 12 | |||
| 13 | export default { | ||
| 14 | props: { | ||
| 15 | formData: { | ||
| 16 | type: String, | ||
| 17 | default: '' | ||
| 18 | } | ||
| 19 | } | ||
| 20 | } | ||
| 21 | </script> | ||
| 22 | <style scoped lang="scss"> | ||
| 23 | @import "~@/styles/mixin.scss"; | ||
| 24 | |||
| 25 | .flowChart { | ||
| 26 | margin: 20px 0; | ||
| 27 | } | ||
| 28 | </style> | ||
| ... | \ No newline at end of file | ... | \ No newline at end of file |
| 1 | <!-- | ||
| 2 | * @Description: | ||
| 3 | * @Autor: renchao | ||
| 4 | * @LastEditTime: 2023-07-17 13:51:29 | ||
| 5 | --> | ||
| 6 | <template> | ||
| 7 | <lb-table :column="column" :maxHeight="200" :heightNumSetting="true" :pagination="false" :key="key" :data="tableData"> | ||
| 8 | </lb-table> | ||
| 9 | </template> | ||
| 10 | <script> | ||
| 11 | import addQlr from './dialog/addQlr.vue' | ||
| 12 | import { mapGetters } from 'vuex' | ||
| 13 | export default { | ||
| 14 | components: { | ||
| 15 | addQlr | ||
| 16 | }, | ||
| 17 | computed: { | ||
| 18 | ...mapGetters(["dictData"]), | ||
| 19 | }, | ||
| 20 | props: { | ||
| 21 | tableData: { | ||
| 22 | type: Array, | ||
| 23 | default: function () { | ||
| 24 | return [] | ||
| 25 | } | ||
| 26 | }, | ||
| 27 | gyfs: { | ||
| 28 | type: String, | ||
| 29 | default: '1' | ||
| 30 | } | ||
| 31 | }, | ||
| 32 | data () { | ||
| 33 | return { | ||
| 34 | key: 0, | ||
| 35 | dataIndex: 0, | ||
| 36 | dialog: false, | ||
| 37 | details: {}, | ||
| 38 | tableDataList: [], | ||
| 39 | qlrCommonTable: [ | ||
| 40 | { | ||
| 41 | label: '序号', | ||
| 42 | type: 'index', | ||
| 43 | width: '50', | ||
| 44 | render: (h, scope) => { | ||
| 45 | return ( | ||
| 46 | <div> | ||
| 47 | {scope.$index + 1} | ||
| 48 | </div> | ||
| 49 | ) | ||
| 50 | } | ||
| 51 | }, | ||
| 52 | { | ||
| 53 | prop: "qllxmc", | ||
| 54 | label: "权利类型" | ||
| 55 | }, | ||
| 56 | { | ||
| 57 | prop: "bdcqzh", | ||
| 58 | label: "不动产权证号" | ||
| 59 | }, | ||
| 60 | { | ||
| 61 | prop: "qlrmc", | ||
| 62 | label: "权利人" | ||
| 63 | }, | ||
| 64 | { | ||
| 65 | prop: "qlrzjhm", | ||
| 66 | label: "证件号码" | ||
| 67 | }, | ||
| 68 | { | ||
| 69 | prop: "bdcdyh", | ||
| 70 | label: "不动产单元号" | ||
| 71 | }, | ||
| 72 | { | ||
| 73 | prop: "qlxzmc", | ||
| 74 | label: "权利性质" | ||
| 75 | }, | ||
| 76 | { | ||
| 77 | prop: "qlytmc", | ||
| 78 | label: "用途" | ||
| 79 | }, | ||
| 80 | { | ||
| 81 | prop: "qlmjmc", | ||
| 82 | label: "面积" | ||
| 83 | }, | ||
| 84 | { | ||
| 85 | prop: "zl", | ||
| 86 | label: "坐落" | ||
| 87 | }, | ||
| 88 | ], | ||
| 89 | column: this.qlrCommonTable | ||
| 90 | } | ||
| 91 | }, | ||
| 92 | watch: { | ||
| 93 | tableData: { | ||
| 94 | handler: function (val, oldVal) { | ||
| 95 | let that = this | ||
| 96 | if (val.length == 0 || !val) { | ||
| 97 | that.tableDataList = _.cloneDeep([{ | ||
| 98 | sqrmc: '', | ||
| 99 | dlrzjlx: '', | ||
| 100 | dlrzjh: '', | ||
| 101 | fr: '' | ||
| 102 | }]) | ||
| 103 | } else { | ||
| 104 | that.tableDataList = _.cloneDeep(val) | ||
| 105 | } | ||
| 106 | }, | ||
| 107 | immediate: true, | ||
| 108 | deep: true | ||
| 109 | }, | ||
| 110 | gyfs: { | ||
| 111 | handler (newVal, oldValue) { | ||
| 112 | let dataList = _.cloneDeep(this.qlrCommonTable) | ||
| 113 | if (newVal == '1') { | ||
| 114 | this.column = _.cloneDeep(dataList).slice(1, dataList.length) | ||
| 115 | } else if ((newVal == '2')) { | ||
| 116 | this.column = dataList | ||
| 117 | } else { | ||
| 118 | this.column = _.cloneDeep(dataList) | ||
| 119 | this.column.splice( | ||
| 120 | 2, 0, { | ||
| 121 | prop: "qlbl", | ||
| 122 | label: "份数" | ||
| 123 | }) | ||
| 124 | } | ||
| 125 | }, | ||
| 126 | immediate: true | ||
| 127 | } | ||
| 128 | }, | ||
| 129 | methods: { | ||
| 130 | } | ||
| 131 | } | ||
| 132 | </script> | ||
| 133 | <style scoped lang='scss'> | ||
| 134 | /deep/.el-table th { | ||
| 135 | height: 30px !important; | ||
| 136 | } | ||
| 137 | /deep/.el-table--small .el-table__cell { | ||
| 138 | padding: 5px; | ||
| 139 | } | ||
| 140 | </style> |
| 1 | <!-- | ||
| 2 | * @Description: | ||
| 3 | * @Autor: renchao | ||
| 4 | * @LastEditTime: 2023-07-17 13:51:29 | ||
| 5 | --> | ||
| 6 | <template> | ||
| 7 | <lb-table :column="column" :maxHeight="200" :heightNumSetting="true" :pagination="false" :key="key" :data="tableData"> | ||
| 8 | </lb-table> | ||
| 9 | </template> | ||
| 10 | <script> | ||
| 11 | import addQlr from './dialog/addQlr.vue' | ||
| 12 | import { mapGetters } from 'vuex' | ||
| 13 | export default { | ||
| 14 | components: { | ||
| 15 | addQlr | ||
| 16 | }, | ||
| 17 | computed: { | ||
| 18 | ...mapGetters(["dictData"]), | ||
| 19 | }, | ||
| 20 | props: { | ||
| 21 | tableData: { | ||
| 22 | type: Array, | ||
| 23 | default: function () { | ||
| 24 | return [] | ||
| 25 | } | ||
| 26 | }, | ||
| 27 | gyfs: { | ||
| 28 | type: String, | ||
| 29 | default: '1' | ||
| 30 | } | ||
| 31 | }, | ||
| 32 | data () { | ||
| 33 | return { | ||
| 34 | key: 0, | ||
| 35 | dataIndex: 0, | ||
| 36 | dialog: false, | ||
| 37 | details: {}, | ||
| 38 | tableDataList: [], | ||
| 39 | qlrCommonTable: [ | ||
| 40 | { | ||
| 41 | label: '序号', | ||
| 42 | type: 'index', | ||
| 43 | width: '50', | ||
| 44 | render: (h, scope) => { | ||
| 45 | return ( | ||
| 46 | <div> | ||
| 47 | {scope.$index + 1} | ||
| 48 | </div> | ||
| 49 | ) | ||
| 50 | } | ||
| 51 | }, | ||
| 52 | { | ||
| 53 | prop: "yg", | ||
| 54 | label: "原告" | ||
| 55 | }, | ||
| 56 | { | ||
| 57 | prop: "cfjg", | ||
| 58 | label: "查封机关" | ||
| 59 | }, | ||
| 60 | { | ||
| 61 | prop: "cfwh", | ||
| 62 | label: "查封文号" | ||
| 63 | }, | ||
| 64 | { | ||
| 65 | prop: "cfqssj", | ||
| 66 | label: "查封开始时间" | ||
| 67 | }, | ||
| 68 | { | ||
| 69 | prop: "cfjssj", | ||
| 70 | label: "查封结束时间" | ||
| 71 | }, | ||
| 72 | { | ||
| 73 | prop: "cflxmc", | ||
| 74 | label: "查封类型" | ||
| 75 | }, | ||
| 76 | { | ||
| 77 | prop: "ywrmc", | ||
| 78 | label: "被执行人" | ||
| 79 | }, | ||
| 80 | { | ||
| 81 | prop: "bcfzh", | ||
| 82 | label: "被查封证号" | ||
| 83 | }, | ||
| 84 | { | ||
| 85 | prop: "bdcdyh", | ||
| 86 | label: "不动产单元号" | ||
| 87 | }, | ||
| 88 | { | ||
| 89 | prop: "zl", | ||
| 90 | label: "坐落" | ||
| 91 | }, | ||
| 92 | |||
| 93 | |||
| 94 | ], | ||
| 95 | column: this.qlrCommonTable | ||
| 96 | } | ||
| 97 | }, | ||
| 98 | watch: { | ||
| 99 | tableData: { | ||
| 100 | handler: function (val, oldVal) { | ||
| 101 | let that = this | ||
| 102 | if (val.length == 0 || !val) { | ||
| 103 | that.tableDataList = _.cloneDeep([{ | ||
| 104 | sqrmc: '', | ||
| 105 | dlrzjlx: '', | ||
| 106 | dlrzjh: '', | ||
| 107 | fr: '' | ||
| 108 | }]) | ||
| 109 | } else { | ||
| 110 | that.tableDataList = _.cloneDeep(val) | ||
| 111 | } | ||
| 112 | }, | ||
| 113 | immediate: true, | ||
| 114 | deep: true | ||
| 115 | }, | ||
| 116 | gyfs: { | ||
| 117 | handler (newVal, oldValue) { | ||
| 118 | let dataList = _.cloneDeep(this.qlrCommonTable) | ||
| 119 | if (newVal == '1') { | ||
| 120 | this.column = _.cloneDeep(dataList).slice(1, dataList.length) | ||
| 121 | } else if ((newVal == '2')) { | ||
| 122 | this.column = dataList | ||
| 123 | } else { | ||
| 124 | this.column = _.cloneDeep(dataList) | ||
| 125 | this.column.splice( | ||
| 126 | 2, 0, { | ||
| 127 | prop: "qlbl", | ||
| 128 | label: "份数" | ||
| 129 | }) | ||
| 130 | } | ||
| 131 | }, | ||
| 132 | immediate: true | ||
| 133 | } | ||
| 134 | }, | ||
| 135 | methods: { | ||
| 136 | } | ||
| 137 | } | ||
| 138 | </script> | ||
| 139 | <style scoped lang='scss'> | ||
| 140 | /deep/.el-table th { | ||
| 141 | height: 30px !important; | ||
| 142 | } | ||
| 143 | /deep/.el-table--small .el-table__cell { | ||
| 144 | padding: 5px; | ||
| 145 | } | ||
| 146 | </style> |
| 1 | <!-- | ||
| 2 | * @Description: | ||
| 3 | * @Autor: renchao | ||
| 4 | * @LastEditTime: 2023-10-24 16:08:44 | ||
| 5 | --> | ||
| 6 | <template> | ||
| 7 | <div class="clxx"> | ||
| 8 | <!-- 材料预览 --> | ||
| 9 | <div class="clyl-box"> | ||
| 10 | <div class="menu-tree"> | ||
| 11 | <el-button | ||
| 12 | type="primary" | ||
| 13 | native-type="submit" | ||
| 14 | @click="viewDetail" | ||
| 15 | style="width: 100%; margin-top: 10px">申请材料目录</el-button> | ||
| 16 | <div class="item"> | ||
| 17 | 材料目录({{ tableData.length }}) | ||
| 18 | <div class="tableList"> | ||
| 19 | <div | ||
| 20 | style=" | ||
| 21 | text-align: center; | ||
| 22 | line-height: 20px; | ||
| 23 | color: black; | ||
| 24 | font-size: 14px; | ||
| 25 | " | ||
| 26 | v-if="tableData.length == 0"> | ||
| 27 | 暂无数据 | ||
| 28 | </div> | ||
| 29 | <div | ||
| 30 | v-for="(item, index) in tableData" | ||
| 31 | :key="item.bsmSj" | ||
| 32 | :class="['child', treeCheckId == item.bsmSj ? 'checked' : '']" | ||
| 33 | @click="treeClick(item, index)"> | ||
| 34 | <span v-if="item.isrequired == 1" class="required">必选</span> | ||
| 35 | <span class="item_name">{{ item.sjmc }}</span> | ||
| 36 | <span class="cl_number" :key="key">({{ item.ys ? item.ys : 0 }})</span> | ||
| 37 | </div> | ||
| 38 | </div> | ||
| 39 | </div> | ||
| 40 | <el-button | ||
| 41 | type="primary" | ||
| 42 | native-type="submit" | ||
| 43 | style="width: 100%" | ||
| 44 | @click="handleAdd()" | ||
| 45 | v-if="ableOperation">新增</el-button> | ||
| 46 | </div> | ||
| 47 | <image-preview | ||
| 48 | ref="imageRef" | ||
| 49 | :key="imgKey" | ||
| 50 | v-if="tableData.length > 0" | ||
| 51 | :previewImg="previewImg" | ||
| 52 | :ableOperation="ableOperation" | ||
| 53 | @updateList="updateList" | ||
| 54 | @nextPriview="nextPriview" | ||
| 55 | @prevPriview="prevPriview" /> | ||
| 56 | </div> | ||
| 57 | <clxxAddDialog v-model="isDialog" /> | ||
| 58 | </div> | ||
| 59 | </template> | ||
| 60 | <script> | ||
| 61 | import { mapGetters } from "vuex"; | ||
| 62 | import clxxAddDialog from "../dialog/clxxAddDialog.vue"; | ||
| 63 | import clxxDetailDialog from "../dialog/clxxDetailDialog.vue"; | ||
| 64 | import imagePreview from "@/views/components/imagePreview.vue"; | ||
| 65 | import { InitClml, saveClml, getClmxList } from "@/api/clxx.js"; | ||
| 66 | export default { | ||
| 67 | components: { clxxAddDialog, imagePreview, clxxDetailDialog }, | ||
| 68 | data () { | ||
| 69 | return { | ||
| 70 | imgKey: 0, | ||
| 71 | //表单是否可操作 | ||
| 72 | ableOperation: true, | ||
| 73 | isDialog: false, | ||
| 74 | iclass: "", | ||
| 75 | // 材料目录选中 | ||
| 76 | treeCheckIndex: 0, | ||
| 77 | treeCheckId: "", | ||
| 78 | key: 0, | ||
| 79 | tableData: [], | ||
| 80 | previewImg: { | ||
| 81 | // 收件标识码 | ||
| 82 | bsmSj: "", | ||
| 83 | bsmSlsq: this.$parent.bsmSlsq, | ||
| 84 | index: 0, | ||
| 85 | selectedIndex: 0, | ||
| 86 | imgList: [], | ||
| 87 | }, | ||
| 88 | }; | ||
| 89 | }, | ||
| 90 | computed: { | ||
| 91 | ...mapGetters(["dictData"]), | ||
| 92 | }, | ||
| 93 | created () { | ||
| 94 | this.clmlInitList(1); | ||
| 95 | }, | ||
| 96 | computed: { | ||
| 97 | ...mapGetters(["workFresh"]), | ||
| 98 | }, | ||
| 99 | watch: { | ||
| 100 | workFresh: { | ||
| 101 | handler (newVal, oldVal) { | ||
| 102 | if (newVal) this.clmlInitList(1); | ||
| 103 | }, | ||
| 104 | }, | ||
| 105 | }, | ||
| 106 | mounted () { | ||
| 107 | this.ableOperation = this.$parent.ableOperation; | ||
| 108 | }, | ||
| 109 | methods: { | ||
| 110 | /** | ||
| 111 | * @description: 自动预览 | ||
| 112 | * @author: renchao | ||
| 113 | */ | ||
| 114 | nextPriview () { | ||
| 115 | if (this.treeCheckIndex < this.tableData.length) { | ||
| 116 | this.treeCheckIndex++; | ||
| 117 | if (this.tableData[this.treeCheckIndex]) { | ||
| 118 | this.treeCheckId = this.tableData[this.treeCheckIndex].bsmSj; | ||
| 119 | // 判断页数 | ||
| 120 | let ys = this.tableData[this.treeCheckIndex].ys | ||
| 121 | this.previewImg.index = 0; | ||
| 122 | // 获取材料明细 | ||
| 123 | if (ys > 0) { | ||
| 124 | getClmxList(this.treeCheckId).then(res => { | ||
| 125 | this.previewImg.imgList = res.result ? res.result : []; | ||
| 126 | }) | ||
| 127 | } else { | ||
| 128 | this.previewImg.imgList = [] | ||
| 129 | } | ||
| 130 | this.previewImg.bsmSj = this.tableData[this.treeCheckIndex].bsmSj; | ||
| 131 | } else { | ||
| 132 | this.$message.error('没有最后一张了'); | ||
| 133 | } | ||
| 134 | } | ||
| 135 | }, | ||
| 136 | /** | ||
| 137 | * @description: prevPriview | ||
| 138 | * @author: renchao | ||
| 139 | */ | ||
| 140 | prevPriview () { | ||
| 141 | if (this.treeCheckIndex >= 1) { | ||
| 142 | this.treeCheckIndex--; | ||
| 143 | this.treeCheckId = this.tableData[this.treeCheckIndex].bsmSj; | ||
| 144 | // 判断页数 | ||
| 145 | let ys = this.tableData[this.treeCheckIndex].ys | ||
| 146 | if (ys > 0) { | ||
| 147 | // 获取材料明细 | ||
| 148 | getClmxList(this.treeCheckId).then(res => { | ||
| 149 | this.previewImg.imgList = res.result ? res.result : []; | ||
| 150 | this.previewImg.index = this.previewImg.imgList.length - 1; | ||
| 151 | }) | ||
| 152 | } else { | ||
| 153 | this.previewImg.imgList = []; | ||
| 154 | this.previewImg.index = 0 | ||
| 155 | } | ||
| 156 | this.previewImg.bsmSj = this.tableData[this.treeCheckIndex].bsmSj; | ||
| 157 | } else { | ||
| 158 | this.$message.error('没有第一张了'); | ||
| 159 | } | ||
| 160 | }, | ||
| 161 | /** | ||
| 162 | * @description: 材料目录明细初始化 | ||
| 163 | * @param {*} type | ||
| 164 | * @author: renchao | ||
| 165 | */ | ||
| 166 | clmlInitList (type) { | ||
| 167 | //type 1:列表初始化 2:新增材料 | ||
| 168 | return new Promise((resolve) => { | ||
| 169 | this.unitData = this.$parent.unitData; | ||
| 170 | var formdata = new FormData(); | ||
| 171 | formdata.append("bsmSlsq", this.$parent.bsmSlsq); | ||
| 172 | formdata.append("bsmSldy", this.$parent.currentSelectProps.bsmSldy); | ||
| 173 | |||
| 174 | InitClml(formdata).then((res) => { | ||
| 175 | if (res.code == 200) { | ||
| 176 | resolve(res.code); | ||
| 177 | if (res.result && res.result.length > 0) { | ||
| 178 | this.tableData = res.result; | ||
| 179 | if (type == 1) { | ||
| 180 | this.treeClick(this.tableData[0], 0); | ||
| 181 | } else if (type == 2) { | ||
| 182 | //新增材料后刷新列表焦点置于新增的对象上 | ||
| 183 | this.treeClick( | ||
| 184 | this.tableData[this.tableData.length - 1], | ||
| 185 | this.tableData.length - 1 | ||
| 186 | ); | ||
| 187 | } | ||
| 188 | } | ||
| 189 | } else { | ||
| 190 | this.$message.error(res.message); | ||
| 191 | } | ||
| 192 | }); | ||
| 193 | }); | ||
| 194 | }, | ||
| 195 | /** | ||
| 196 | * @description: setChecked | ||
| 197 | * @param {*} item | ||
| 198 | * @author: renchao | ||
| 199 | */ | ||
| 200 | setChecked (item) { | ||
| 201 | this.treeCheckId = item.bsmSj; | ||
| 202 | this.title = item.sjmc; | ||
| 203 | this.titleYs = 1; | ||
| 204 | this.titleNum = item.children.length; | ||
| 205 | this.previewImg.imgList = item.children; | ||
| 206 | this.previewImg.bsmSj = item.bsmSj; | ||
| 207 | }, | ||
| 208 | /** | ||
| 209 | * @description: updateList | ||
| 210 | * @param {*} val | ||
| 211 | * @author: renchao | ||
| 212 | */ | ||
| 213 | updateList (val) { | ||
| 214 | let that = this; | ||
| 215 | if (val.children.length != 0) { | ||
| 216 | //删除最后一张图片时 val=null | ||
| 217 | this.tableData.forEach((item) => { | ||
| 218 | if (item.bsmSj === val.bsmSj) { | ||
| 219 | item.ys = val.children.length; | ||
| 220 | } | ||
| 221 | }); | ||
| 222 | this.previewImg.imgList = _.cloneDeep(val.children); | ||
| 223 | if (this.previewImg.index == this.previewImg.imgList.length) { | ||
| 224 | this.previewImg.index = this.previewImg.index - 1; | ||
| 225 | } | ||
| 226 | this.key++ | ||
| 227 | } else { | ||
| 228 | this.previewImg.imgList = []; | ||
| 229 | this.tableData.forEach((item, index) => { | ||
| 230 | if (this.treeCheckId == item.bsmSj) { | ||
| 231 | item.ys = 0; | ||
| 232 | that.treeCheckIndex = index; | ||
| 233 | } | ||
| 234 | }); | ||
| 235 | } | ||
| 236 | }, | ||
| 237 | /** | ||
| 238 | * @description: 添加材料目录 | ||
| 239 | * @author: renchao | ||
| 240 | */ | ||
| 241 | handleAdd () { | ||
| 242 | this.isDialog = true; | ||
| 243 | }, | ||
| 244 | /** | ||
| 245 | * @description: 新增弹窗保存 | ||
| 246 | * @param {*} data | ||
| 247 | * @author: renchao | ||
| 248 | */ | ||
| 249 | addSave (data) { | ||
| 250 | let obj = { | ||
| 251 | bsmSlsq: this.$parent.bsmSlsq, | ||
| 252 | isrequired: "1", | ||
| 253 | sjmc: data.clmc, | ||
| 254 | sjsl: 0, | ||
| 255 | smzt: "", | ||
| 256 | ys: 0, | ||
| 257 | sjlx: data.cllx, | ||
| 258 | sfxjcl: "1", // 是否必选 | ||
| 259 | sfggcl: data.sfggcl, | ||
| 260 | }; | ||
| 261 | //是否公共材料 | ||
| 262 | if (data.sfggcl == "0") { | ||
| 263 | obj["bsmSldy"] = this.$parent.currentSelectProps.bsmSldy; | ||
| 264 | } | ||
| 265 | if (this.$route.query?.djywbm == "DJBBL") { | ||
| 266 | obj.bsmSldy = this.$parent.bsmRepair | ||
| 267 | } | ||
| 268 | saveClml(obj).then(async (res) => { | ||
| 269 | if (res.code == 200) { | ||
| 270 | let res = await this.clmlInitList(2); | ||
| 271 | if (res == 200) | ||
| 272 | this.$message({ | ||
| 273 | message: "新增成功", | ||
| 274 | type: "success", | ||
| 275 | }); | ||
| 276 | } | ||
| 277 | }); | ||
| 278 | }, | ||
| 279 | /** | ||
| 280 | * @description: 材料目录点击选中 | ||
| 281 | * @param {*} item | ||
| 282 | * @param {*} index | ||
| 283 | * @author: renchao | ||
| 284 | */ | ||
| 285 | treeClick (item, index) { | ||
| 286 | this.previewImg.index = 0; | ||
| 287 | this.treeCheckId = item?.bsmSj; | ||
| 288 | this.treeCheckIndex = index; | ||
| 289 | // 获取材料明细 | ||
| 290 | getClmxList(item.bsmSj).then(res => { | ||
| 291 | this.previewImg.imgList = res.result ? res.result : []; | ||
| 292 | }) | ||
| 293 | this.previewImg.bsmSj = item?.bsmSj; | ||
| 294 | if (this.$refs.imageRef) { | ||
| 295 | this.$refs.imageRef.initialIndex = 0 | ||
| 296 | } | ||
| 297 | this.imgKey++ | ||
| 298 | }, | ||
| 299 | /** | ||
| 300 | * @description: 小图片点击 | ||
| 301 | * @param {*} item | ||
| 302 | * @param {*} index | ||
| 303 | * @author: renchao | ||
| 304 | */ | ||
| 305 | imgClick (item, index) { | ||
| 306 | this.showImg = item; | ||
| 307 | this.titleYs = index + 1; | ||
| 308 | }, | ||
| 309 | //查看明细 | ||
| 310 | async viewDetail () { | ||
| 311 | await this.clmlInitList(); | ||
| 312 | this.$store.dispatch("user/reWorkFresh", false); | ||
| 313 | this.$popupDialog( | ||
| 314 | "申请材料目录", | ||
| 315 | "workflow/components/dialog/clxxDetailDialog", | ||
| 316 | { | ||
| 317 | data: this.tableData, | ||
| 318 | bsmSldy: this.$parent.currentSelectProps.bsmSldy, | ||
| 319 | unitData: this.$parent.unitData, | ||
| 320 | ableOperation: this.$parent.ableOperation, | ||
| 321 | bsmRepair: this.$parent.bsmRepair | ||
| 322 | }, | ||
| 323 | "60%", | ||
| 324 | true | ||
| 325 | ) | ||
| 326 | }, | ||
| 327 | //设置tableData | ||
| 328 | setTableData (tableData) { | ||
| 329 | this.$nextTick((res) => { | ||
| 330 | this.tableData = tableData; | ||
| 331 | }) | ||
| 332 | } | ||
| 333 | } | ||
| 334 | } | ||
| 335 | </script> | ||
| 336 | <style scoped lang="scss"> | ||
| 337 | @import "~@/styles/mixin.scss"; | ||
| 338 | |||
| 339 | .active { | ||
| 340 | background: $light-blue !important; | ||
| 341 | color: #fff; | ||
| 342 | } | ||
| 343 | |||
| 344 | .required { | ||
| 345 | font-size: 12px; | ||
| 346 | color: $pink; | ||
| 347 | float: left; | ||
| 348 | } | ||
| 349 | |||
| 350 | .cl_number { | ||
| 351 | width: 30px; | ||
| 352 | } | ||
| 353 | |||
| 354 | .clxx { | ||
| 355 | width: 100%; | ||
| 356 | display: flex; | ||
| 357 | padding-left: 5px; | ||
| 358 | height: calc(100vh - 125px); | ||
| 359 | |||
| 360 | .left { | ||
| 361 | display: flex; | ||
| 362 | flex-direction: column; | ||
| 363 | justify-content: space-between; | ||
| 364 | |||
| 365 | .item { | ||
| 366 | width: 28px; | ||
| 367 | height: 49%; | ||
| 368 | @include flex-center; | ||
| 369 | background-color: #e4e7ed; | ||
| 370 | border-bottom-right-radius: 10px; | ||
| 371 | padding: 5px; | ||
| 372 | cursor: pointer; | ||
| 373 | transition: all 0.3s; | ||
| 374 | |||
| 375 | &:hover { | ||
| 376 | @extend .active; | ||
| 377 | } | ||
| 378 | } | ||
| 379 | } | ||
| 380 | |||
| 381 | .clmlmx-box { | ||
| 382 | margin: 0 auto; | ||
| 383 | |||
| 384 | .title { | ||
| 385 | text-align: center; | ||
| 386 | height: 60px; | ||
| 387 | line-height: 60px; | ||
| 388 | border: 1px solid #dfe6ec; | ||
| 389 | font-size: 20px; | ||
| 390 | background: #81d3f81a; | ||
| 391 | margin-bottom: -1px; | ||
| 392 | } | ||
| 393 | } | ||
| 394 | |||
| 395 | .clyl-box { | ||
| 396 | width: 100%; | ||
| 397 | height: 100%; | ||
| 398 | display: flex; | ||
| 399 | .tableList { | ||
| 400 | margin-top: 10px; | ||
| 401 | } | ||
| 402 | .menu-tree { | ||
| 403 | width: 20%; | ||
| 404 | min-width: 160px; | ||
| 405 | height: 100%; | ||
| 406 | font-size: 14px; | ||
| 407 | border-right: 1px dotted #d9d9d9; | ||
| 408 | padding: 0 10px; | ||
| 409 | |||
| 410 | .item { | ||
| 411 | line-height: 30px; | ||
| 412 | padding-top: 5px; | ||
| 413 | border-bottom: 1px solid #e8e8e8; | ||
| 414 | font-size: 16px; | ||
| 415 | text-align: center; | ||
| 416 | color: $light-blue; | ||
| 417 | |||
| 418 | .itemIcon { | ||
| 419 | float: right; | ||
| 420 | line-height: 60px; | ||
| 421 | cursor: pointer; | ||
| 422 | } | ||
| 423 | |||
| 424 | .child { | ||
| 425 | line-height: 32px; | ||
| 426 | border-bottom: 1px solid #e8e8e8; | ||
| 427 | padding-left: 10px; | ||
| 428 | color: #6b6b6b; | ||
| 429 | cursor: pointer; | ||
| 430 | box-sizing: border-box; | ||
| 431 | border-radius: 6px; | ||
| 432 | line-height: 20px; | ||
| 433 | transition: all 0.3s; | ||
| 434 | padding: 8px 0; | ||
| 435 | overflow: hidden; | ||
| 436 | display: flex; | ||
| 437 | justify-content: space-between; | ||
| 438 | } | ||
| 439 | .item_name { | ||
| 440 | flex: 1; | ||
| 441 | font-size: 14px; | ||
| 442 | display: flex; | ||
| 443 | justify-content: center; | ||
| 444 | } | ||
| 445 | .child:hover { | ||
| 446 | color: $light-blue; | ||
| 447 | transform: scale(1.1); | ||
| 448 | } | ||
| 449 | |||
| 450 | .checked { | ||
| 451 | border: 1px solid $light-blue; | ||
| 452 | color: $light-blue; | ||
| 453 | box-sizing: border-box; | ||
| 454 | } | ||
| 455 | } | ||
| 456 | } | ||
| 457 | |||
| 458 | .clyl-img { | ||
| 459 | width: 75%; | ||
| 460 | height: 100%; | ||
| 461 | background: #f3f4f7; | ||
| 462 | margin: 0 auto; | ||
| 463 | position: relative; | ||
| 464 | } | ||
| 465 | } | ||
| 466 | } | ||
| 467 | </style> |
| 1 | <!-- | ||
| 2 | * @Description: | ||
| 3 | * @Autor: renchao | ||
| 4 | * @LastEditTime: 2023-09-19 10:15:07 | ||
| 5 | --> | ||
| 6 | <template> | ||
| 7 | <dialogBox title="新建材料信息" width="25%" isMain v-model="myValue" @closeDialog="closeDialog" @submitForm="handleSubmit" | ||
| 8 | :isFullscreen="false"> | ||
| 9 | <el-form :model="ruleForm" :rules="rules" ref="ruleForm" label-width="100px"> | ||
| 10 | <el-row> | ||
| 11 | <el-col :span="24"> | ||
| 12 | <el-form-item label="材料类型" prop="cllx"> | ||
| 13 | <el-select v-model="ruleForm.cllx" class="width100" placeholder="请选择"> | ||
| 14 | <el-option v-for="item in dictData['A40']" :key="item.dcode" :label="item.dname" :value="item.dcode"> | ||
| 15 | </el-option> | ||
| 16 | </el-select> | ||
| 17 | </el-form-item> | ||
| 18 | </el-col> | ||
| 19 | </el-row> | ||
| 20 | <el-row :gutter="20"> | ||
| 21 | <el-col :span="24"> | ||
| 22 | <el-form-item label="材料名称" prop="clmc"> | ||
| 23 | <el-input v-model="ruleForm.clmc"></el-input> | ||
| 24 | </el-form-item> | ||
| 25 | </el-col> | ||
| 26 | </el-row> | ||
| 27 | <el-row :gutter="20"> | ||
| 28 | <el-col :span="24"> | ||
| 29 | <el-form-item | ||
| 30 | label="是否公共材料"> | ||
| 31 | <el-radio-group | ||
| 32 | v-model="ruleForm.sfggcl"> | ||
| 33 | <el-radio label="1">是</el-radio> | ||
| 34 | <el-radio label="0">否</el-radio> | ||
| 35 | </el-radio-group> | ||
| 36 | </el-form-item> | ||
| 37 | </el-col> | ||
| 38 | </el-row> | ||
| 39 | </el-form> | ||
| 40 | </dialogBox> | ||
| 41 | </template> | ||
| 42 | |||
| 43 | <script> | ||
| 44 | import { mapGetters } from "vuex"; | ||
| 45 | export default { | ||
| 46 | props: { | ||
| 47 | value: { type: Boolean, default: false }, | ||
| 48 | }, | ||
| 49 | data () { | ||
| 50 | return { | ||
| 51 | myValue: this.value, | ||
| 52 | ruleForm: { | ||
| 53 | cllx: "", | ||
| 54 | clmc: "", | ||
| 55 | sfggcl: "0" | ||
| 56 | }, | ||
| 57 | rules: { | ||
| 58 | cllx: [ | ||
| 59 | { required: true, message: '请选择材料类型', trigger: 'change' } | ||
| 60 | ], | ||
| 61 | clmc: [ | ||
| 62 | { required: true, message: '请输入材料名称', trigger: 'blur' } | ||
| 63 | ], | ||
| 64 | clbm: [ | ||
| 65 | { required: true, message: '请输入材料编码', trigger: 'blur' } | ||
| 66 | ] | ||
| 67 | } | ||
| 68 | } | ||
| 69 | }, | ||
| 70 | computed: { | ||
| 71 | ...mapGetters(["dictData"]), | ||
| 72 | }, | ||
| 73 | watch: { | ||
| 74 | value (val) { | ||
| 75 | this.myValue = val; | ||
| 76 | }, | ||
| 77 | }, | ||
| 78 | methods: { | ||
| 79 | /** | ||
| 80 | * @description: closeDialog | ||
| 81 | * @author: renchao | ||
| 82 | */ | ||
| 83 | closeDialog () { | ||
| 84 | this.$emit("input", false); | ||
| 85 | this.ruleForm = { | ||
| 86 | cllx: "", | ||
| 87 | clmc: "", | ||
| 88 | sfggcl: "0" | ||
| 89 | } | ||
| 90 | }, | ||
| 91 | /** | ||
| 92 | * @description: handleSubmit | ||
| 93 | * @author: renchao | ||
| 94 | */ | ||
| 95 | handleSubmit () { | ||
| 96 | this.$refs['ruleForm'].validate((valid) => { | ||
| 97 | if (valid) { | ||
| 98 | this.$parent.addSave(this.ruleForm); | ||
| 99 | this.ruleForm = { | ||
| 100 | cllx: "", | ||
| 101 | clmc: "", | ||
| 102 | sfggcl: "0" | ||
| 103 | } | ||
| 104 | this.$emit("input", false); | ||
| 105 | } else { | ||
| 106 | return false; | ||
| 107 | } | ||
| 108 | }) | ||
| 109 | } | ||
| 110 | } | ||
| 111 | }; | ||
| 112 | </script> | ||
| 113 | <style scoped lang="scss"> | ||
| 114 | .submit-button { | ||
| 115 | text-align: center; | ||
| 116 | height: 52px; | ||
| 117 | padding-top: 10px; | ||
| 118 | background-color: #fff; | ||
| 119 | } | ||
| 120 | </style> |
| 1 | <!-- | ||
| 2 | * @Description: | ||
| 3 | * @Autor: renchao | ||
| 4 | * @LastEditTime: 2023-10-24 17:16:18 | ||
| 5 | --> | ||
| 6 | <template> | ||
| 7 | <div class="clmlmx-box"> | ||
| 8 | <lb-table :column="column" :key="key" row-key="bsmSj" ref="listTable" :heightNumSetting="true" :calcHeight="600" | ||
| 9 | :pagination="false" :data="tableData"> | ||
| 10 | </lb-table> | ||
| 11 | <div class="text-center"> | ||
| 12 | <el-button @click="$popupCacel">取消</el-button> | ||
| 13 | <el-button type="primary" @click="handleSubmit" :loading="loading" v-if="formData.ableOperation && tableData.length>0">保存</el-button> | ||
| 14 | </div> | ||
| 15 | </div> | ||
| 16 | </template> | ||
| 17 | <script> | ||
| 18 | import Vue from 'vue' | ||
| 19 | import Sortable from 'sortablejs' | ||
| 20 | import store from '@/store/index.js' | ||
| 21 | import { updateClml } from "@/api/clxx.js"; | ||
| 22 | export default { | ||
| 23 | props: { | ||
| 24 | formData: { | ||
| 25 | type: Object, | ||
| 26 | default: () => { | ||
| 27 | return {} | ||
| 28 | } | ||
| 29 | } | ||
| 30 | }, | ||
| 31 | data () { | ||
| 32 | return { | ||
| 33 | loading: false, | ||
| 34 | sortable: null, | ||
| 35 | column: [ | ||
| 36 | { | ||
| 37 | prop: "isrequired", | ||
| 38 | label: "是否必选", | ||
| 39 | width: "80", | ||
| 40 | render: (h, scope) => { | ||
| 41 | if (scope.row.isrequired === "1") { | ||
| 42 | return ( | ||
| 43 | <div> | ||
| 44 | <span>必选</span> | ||
| 45 | </div> | ||
| 46 | ); | ||
| 47 | } | ||
| 48 | else { | ||
| 49 | return ( | ||
| 50 | <div> | ||
| 51 | <span>可选</span> | ||
| 52 | </div> | ||
| 53 | ) | ||
| 54 | } | ||
| 55 | } | ||
| 56 | }, | ||
| 57 | { | ||
| 58 | label: "材料名称", | ||
| 59 | render: (h, scope) => { | ||
| 60 | return ( | ||
| 61 | (this.formData.ableOperation && scope.row.sfxjcl == '1') ? | ||
| 62 | <el-input value={scope.row.sjmc} onInput={(val) => { scope.row.sjmc = val }}></el-input> : <span>{scope.row.sjmc}</span> | ||
| 63 | ) | ||
| 64 | } | ||
| 65 | }, | ||
| 66 | { | ||
| 67 | label: "材料类型", | ||
| 68 | width: "110", | ||
| 69 | render: (h, scope) => { | ||
| 70 | return ( | ||
| 71 | this.formData.ableOperation ? | ||
| 72 | <el-select value={scope.row.sjlx} | ||
| 73 | onChange={(val) => { scope.row.sjlx = val }}> | ||
| 74 | { | ||
| 75 | store.getters.dictData['A40'].map(option => { | ||
| 76 | return ( | ||
| 77 | <el-option label={option.dname} value={option.dcode}></el-option> | ||
| 78 | ) | ||
| 79 | }) | ||
| 80 | } | ||
| 81 | </el-select> : <span>{this.dicStatus(scope.row.sjlx, "A40")}</span> | ||
| 82 | ) | ||
| 83 | } | ||
| 84 | }, | ||
| 85 | { | ||
| 86 | prop: "sjsl", | ||
| 87 | label: "收件数量", | ||
| 88 | width: "80", | ||
| 89 | render: (h, scope) => { | ||
| 90 | return ( | ||
| 91 | (this.formData.ableOperation) ? | ||
| 92 | <el-input value={scope.row.sjsl} onInput={(val) => { scope.row.sjsl = val }}></el-input> : <span>{ | ||
| 93 | scope.row.sjsl | ||
| 94 | }</span> | ||
| 95 | ) | ||
| 96 | } | ||
| 97 | }, | ||
| 98 | { | ||
| 99 | label: "扫描时间", | ||
| 100 | width: "140", | ||
| 101 | render: (h, scope) => { | ||
| 102 | return ( | ||
| 103 | <span>{scope.row.sjsj}</span> | ||
| 104 | ) | ||
| 105 | } | ||
| 106 | }, | ||
| 107 | { | ||
| 108 | label: "页数", | ||
| 109 | width: "60", | ||
| 110 | render: (h, scope) => { | ||
| 111 | if (scope.row.ys && scope.row.ys > 0) { | ||
| 112 | return ( | ||
| 113 | <div> | ||
| 114 | <span>{scope.row.ys}</span> | ||
| 115 | </div> | ||
| 116 | ); | ||
| 117 | } else { | ||
| 118 | return ( | ||
| 119 | <div> | ||
| 120 | <span>0</span> | ||
| 121 | </div> | ||
| 122 | ); | ||
| 123 | } | ||
| 124 | }, | ||
| 125 | }, | ||
| 126 | { | ||
| 127 | label: "是否新建材料", | ||
| 128 | width: "80", | ||
| 129 | render: (h, scope) => { | ||
| 130 | if (scope.row.sfxjcl && scope.row.sfxjcl == '1') { | ||
| 131 | return ( | ||
| 132 | <span>是</span> | ||
| 133 | ); | ||
| 134 | } else { | ||
| 135 | return ( | ||
| 136 | <span>否</span> | ||
| 137 | ); | ||
| 138 | } | ||
| 139 | }, | ||
| 140 | }, | ||
| 141 | { | ||
| 142 | label: "操作", | ||
| 143 | width: "100", | ||
| 144 | render: (h, scope) => { | ||
| 145 | return ( | ||
| 146 | <el-button | ||
| 147 | type="text" | ||
| 148 | icon="el-icon-delete" | ||
| 149 | disabled={!(scope.row.ys == 0 && scope.row.sfxjcl == '1') || !this.formData.ableOperation} | ||
| 150 | onClick={() => { | ||
| 151 | this.handleDelete(scope.$index, scope.row); | ||
| 152 | }} | ||
| 153 | > | ||
| 154 | 删除 | ||
| 155 | </el-button> | ||
| 156 | ) | ||
| 157 | } | ||
| 158 | } | ||
| 159 | ], | ||
| 160 | key: 0, | ||
| 161 | tableData: [] | ||
| 162 | } | ||
| 163 | }, | ||
| 164 | watch: { | ||
| 165 | 'formData.data': { | ||
| 166 | handler: function (val, oldVal) { | ||
| 167 | this.tableData = _.cloneDeep(val) | ||
| 168 | }, | ||
| 169 | immediate: true, | ||
| 170 | deep: true | ||
| 171 | } | ||
| 172 | }, | ||
| 173 | mounted () { | ||
| 174 | this.initSort() | ||
| 175 | }, | ||
| 176 | beforeDestroy () { | ||
| 177 | if (this.sortable) { | ||
| 178 | this.sortable.destroy(); | ||
| 179 | } | ||
| 180 | }, | ||
| 181 | methods: { | ||
| 182 | handleSubmit () { | ||
| 183 | this.loading = true | ||
| 184 | store.dispatch('user/reWorkFresh', false) | ||
| 185 | updateClml(this.tableData, this.formData.bsmSldy, Vue.prototype.$currentRoute.query.bsmSlsq).then(res => { | ||
| 186 | this.loading = false | ||
| 187 | if (res.code == 200) { | ||
| 188 | this.$message({ | ||
| 189 | message: '保存成功', | ||
| 190 | type: 'success' | ||
| 191 | }) | ||
| 192 | this.$popupCacel() | ||
| 193 | store.dispatch('user/reWorkFresh', true) | ||
| 194 | } | ||
| 195 | }).catch(() => { | ||
| 196 | this.loading = false | ||
| 197 | }) | ||
| 198 | }, | ||
| 199 | /** | ||
| 200 | * @description: 材料目录删除 | ||
| 201 | * @param {*} index | ||
| 202 | * @param {*} row | ||
| 203 | */ | ||
| 204 | handleDelete (index, row) { | ||
| 205 | this.$confirm('此操作将永久删除该 是否继续?', '提示', { | ||
| 206 | confirmButtonText: '确定', | ||
| 207 | cancelButtonText: '取消', | ||
| 208 | type: 'warning' | ||
| 209 | }).then(() => { | ||
| 210 | this.tableData.splice(index, 1); | ||
| 211 | }).catch(() => { | ||
| 212 | this.$message({ | ||
| 213 | type: 'info', | ||
| 214 | message: '已取消删除' | ||
| 215 | }) | ||
| 216 | }) | ||
| 217 | }, | ||
| 218 | initSort () { | ||
| 219 | const el = this.$refs.listTable.$el.querySelectorAll('.el-table__body-wrapper > table > tbody')[0] | ||
| 220 | this.sortable = Sortable.create(el, { | ||
| 221 | ghostClass: 'sortable-ghost', | ||
| 222 | setData: function (dataTransfer) { | ||
| 223 | dataTransfer.setData('Text', '') | ||
| 224 | }, | ||
| 225 | onEnd: evt => { | ||
| 226 | const targetRow = this.tableData.splice(evt.oldIndex, 1)[0]; | ||
| 227 | this.tableData.splice(evt.newIndex, 0, targetRow); | ||
| 228 | } | ||
| 229 | }) | ||
| 230 | }, | ||
| 231 | dicStatus (val, code) { | ||
| 232 | let data = store.getters.dictData[code], | ||
| 233 | name = '暂无' | ||
| 234 | if (data) { | ||
| 235 | data.map((item) => { | ||
| 236 | if (item.dcode == val) { | ||
| 237 | name = item.dname | ||
| 238 | } | ||
| 239 | }) | ||
| 240 | return name | ||
| 241 | } | ||
| 242 | } | ||
| 243 | } | ||
| 244 | } | ||
| 245 | </script> | ||
| 246 | <style scoped lang='scss'> | ||
| 247 | @import "~@/styles/mixin.scss"; | ||
| 248 | .clmlmx-box { | ||
| 249 | margin: 0 auto; | ||
| 250 | .title { | ||
| 251 | text-align: center; | ||
| 252 | height: 60px; | ||
| 253 | line-height: 60px; | ||
| 254 | border: 1px solid #dfe6ec; | ||
| 255 | font-size: 20px; | ||
| 256 | background: #81d3f81a; | ||
| 257 | margin-bottom: -1px; | ||
| 258 | } | ||
| 259 | } | ||
| 260 | </style> |
| 1 | <!-- | ||
| 2 | * @Description: | ||
| 3 | * @Autor: renchao | ||
| 4 | * @LastEditTime: 2023-05-04 14:13:28 | ||
| 5 | --> | ||
| 6 | <template> | ||
| 7 | <lb-table :column="tableData.columns" heightNumSetting :pagination="false" :key="key" :data="tableData.data"> | ||
| 8 | </lb-table> | ||
| 9 | </template> | ||
| 10 | <script> | ||
| 11 | import { mapGetters } from 'vuex' | ||
| 12 | import { getSzRecordList } from "@/api/bdcqz.js"; | ||
| 13 | import table from "@/utils/mixin/table"; | ||
| 14 | import { szxxdatas } from "../../javascript/szxxdata"; | ||
| 15 | export default { | ||
| 16 | components: { | ||
| 17 | |||
| 18 | }, | ||
| 19 | mixins: [table], | ||
| 20 | computed: { | ||
| 21 | ...mapGetters(["dictData"]), | ||
| 22 | }, | ||
| 23 | props: { | ||
| 24 | formData: { | ||
| 25 | type: Object, | ||
| 26 | default: {} | ||
| 27 | } | ||
| 28 | }, | ||
| 29 | data () { | ||
| 30 | return { | ||
| 31 | key: 0, | ||
| 32 | dataIndex: 0, | ||
| 33 | dialog: false, | ||
| 34 | details: {}, | ||
| 35 | tableData: { | ||
| 36 | total: 0, | ||
| 37 | columns: szxxdatas.columns(), | ||
| 38 | data: [], | ||
| 39 | }, | ||
| 40 | } | ||
| 41 | }, | ||
| 42 | mounted () { | ||
| 43 | this.query() | ||
| 44 | }, | ||
| 45 | methods: { | ||
| 46 | /** | ||
| 47 | * @description: query | ||
| 48 | * @author: renchao | ||
| 49 | */ | ||
| 50 | query () { | ||
| 51 | getSzRecordList({ bsmBdcqz: this.formData.bsmBdcqz }).then(res => { | ||
| 52 | if (res.code == 200) { | ||
| 53 | this.tableData.data = res.result; | ||
| 54 | this.key++ | ||
| 55 | } | ||
| 56 | }) | ||
| 57 | } | ||
| 58 | } | ||
| 59 | } | ||
| 60 | </script> | ||
| 61 | <style scoped lang='scss'> | ||
| 62 | </style> |
| 1 | <!-- | ||
| 2 | * @Description: | ||
| 3 | * @Autor: renchao | ||
| 4 | * @LastEditTime: 2023-11-23 17:20:01 | ||
| 5 | --> | ||
| 6 | <template> | ||
| 7 | <iframe :src="ip +'/txdw/#/' + formData.bsmZd" frameborder="0" style="width: 100%; height:710px;"></iframe> | ||
| 8 | </template> | ||
| 9 | <script> | ||
| 10 | export default { | ||
| 11 | props: { | ||
| 12 | formData: { | ||
| 13 | type: Object, | ||
| 14 | default: () => { | ||
| 15 | return {} | ||
| 16 | } | ||
| 17 | } | ||
| 18 | }, | ||
| 19 | data () { | ||
| 20 | return { | ||
| 21 | ip: window._config.services.management | ||
| 22 | } | ||
| 23 | } | ||
| 24 | } | ||
| 25 | </script> | ||
| ... | \ No newline at end of file | ... | \ No newline at end of file |
| 1 | <!-- | ||
| 2 | * @Description: | ||
| 3 | * @Autor: renchao | ||
| 4 | * @LastEditTime: 2024-02-06 13:23:36 | ||
| 5 | --> | ||
| 6 | <template> | ||
| 7 | <div> | ||
| 8 | <div class="zsdy-content" v-Loading="loading"> | ||
| 9 | <el-form | ||
| 10 | :model="ruleForm" | ||
| 11 | ref="ruleForm" | ||
| 12 | label-width="120px"> | ||
| 13 | <el-form-item label="印刷序列号:" prop="ysxlh"> | ||
| 14 | <el-row> | ||
| 15 | <el-col :span="18"> | ||
| 16 | <el-select v-model="ruleForm.ysxlh" @change="handleSelect" :disabled="disabled" placeholder="请选择"> | ||
| 17 | <el-option | ||
| 18 | v-for="item in ysxlh" | ||
| 19 | :key="item.ysxlh" | ||
| 20 | :label="item.ysxlh" | ||
| 21 | :value="item.ysxlh"> | ||
| 22 | </el-option> | ||
| 23 | </el-select> | ||
| 24 | </el-col> | ||
| 25 | <el-col :span="4" v-if="this.formData.bdcqzlx==1"> | ||
| 26 | <el-tabs v-model="activeTitle"> | ||
| 27 | <el-tab-pane label="第一页" name="title1"></el-tab-pane> | ||
| 28 | <el-tab-pane label="第二页" name="title2"></el-tab-pane> | ||
| 29 | </el-tabs> | ||
| 30 | </el-col> | ||
| 31 | <el-col :span="2" v-if="this.formData.ysxlh" style="float:right"> | ||
| 32 | <el-button type="primary" @click="handleZF" v-if="disabled">作废</el-button> | ||
| 33 | </el-col> | ||
| 34 | </el-row> | ||
| 35 | |||
| 36 | </el-form-item> | ||
| 37 | </el-form> | ||
| 38 | <div class="zs-content"> | ||
| 39 | <canvas ref="zs1" width="1024" v-show="this.formData.bdcqzlx==1 && activeTitle=='title1'" height="739"></canvas> | ||
| 40 | <canvas ref="zs" width="1024" v-show="this.formData.bdcqzlx==1 && activeTitle=='title2'" height="739"></canvas> | ||
| 41 | <canvas ref="zm" width="1169" v-show="this.formData.bdcqzlx==2" height="828"></canvas> | ||
| 42 | </div> | ||
| 43 | </div> | ||
| 44 | <!-- 打印模板需要此模块 --> | ||
| 45 | <object id="LODOP_OB" classid="clsid:2105C259-1E0C-4534-8141-A753534CB4CA" v-show="false"> | ||
| 46 | <embed id="LODOP_EM" type="application/x-print-lodop" width="1180" height="720" pluginspage="install_lodop32.exe" /> | ||
| 47 | </object> | ||
| 48 | <div class="text-center pt-10"> | ||
| 49 | <el-button @click="$popupCacel">取消</el-button> | ||
| 50 | <el-button type="primary" @click="handlePrint" v-if="disabled">打印</el-button> | ||
| 51 | <el-button type="primary" @click="handleSubmit" v-else>确定</el-button> | ||
| 52 | </div> | ||
| 53 | |||
| 54 | <el-dialog title="证书作废" :visible.sync="invalidDiglog" width="40%" :modal-append-to-body="false" top="30vh"> | ||
| 55 | <div class="invalid-diglog"> | ||
| 56 | <div class="invalid-title"> | ||
| 57 | <i class="el-icon-question invalid-icon"></i> | ||
| 58 | <div class="invalid-body">您确定作废证书并再次打印?印刷序列号{{bdcqz.ysxlh}}</div> | ||
| 59 | </div> | ||
| 60 | <div class="invalid-reson">作废原因:</div> | ||
| 61 | <el-input v-model="zfyy" placeholder="请输入作废原因" type="textarea" :rows="4"></el-input> | ||
| 62 | <div class="text-center pt-10"> | ||
| 63 | <el-button @click="closeInvalidDiglog">取 消</el-button> | ||
| 64 | <el-button type="primary" @click="confirmInvalid">确 定</el-button> | ||
| 65 | </div> | ||
| 66 | </div> | ||
| 67 | </el-dialog> | ||
| 68 | </div> | ||
| 69 | </template> | ||
| 70 | |||
| 71 | <script> | ||
| 72 | import QRCode from 'qrcode' | ||
| 73 | import store from '@/store/index.js' | ||
| 74 | import { datas } from "../../javascript/zsyl.js"; | ||
| 75 | import { getPrintTemplateByCode } from "@/api/print"; | ||
| 76 | import { getLodop } from "@/utils/LodopFuncs" | ||
| 77 | import { readYsxlh, certificate, getBdcqzDetail, invalidCertificate } from "@/api/bdcqz.js"; | ||
| 78 | export default { | ||
| 79 | props: { | ||
| 80 | formData: { | ||
| 81 | type: Object, | ||
| 82 | default: () => { | ||
| 83 | return {} | ||
| 84 | } | ||
| 85 | } | ||
| 86 | }, | ||
| 87 | data () { | ||
| 88 | return { | ||
| 89 | activeTitle: 'title1', | ||
| 90 | // 详细信息 | ||
| 91 | bdcqz: {}, | ||
| 92 | key: 0, | ||
| 93 | disabled: false, | ||
| 94 | // 不动产证书图片地址 | ||
| 95 | imgSrc1: require('@/image/bdcqz/bdcqzs1.jpg'), | ||
| 96 | imgSrc: require('@/image/bdcqz/bdcqzs2.jpg'), | ||
| 97 | bdczmSrc: require('@/image/bdcqz/bdczm.jpg'), | ||
| 98 | loading: false, | ||
| 99 | //印刷序列号集合 | ||
| 100 | ysxlh: [], | ||
| 101 | //列名称对象 | ||
| 102 | columns: [], | ||
| 103 | //tab选择绑定值 | ||
| 104 | activeName: '', | ||
| 105 | invalidDiglog: false, | ||
| 106 | zfyy: "", | ||
| 107 | ruleForm: { | ||
| 108 | bsmBdcqz: "", | ||
| 109 | szmc: "不动产权证书", | ||
| 110 | bdcqzlx: "", | ||
| 111 | szzh: "", | ||
| 112 | ysxlh: "" | ||
| 113 | } | ||
| 114 | } | ||
| 115 | }, | ||
| 116 | mounted () { | ||
| 117 | store.dispatch('user/refreshPage', false) | ||
| 118 | this.columns = datas.columns() | ||
| 119 | this.ysxlhList() | ||
| 120 | // 获取详细信息 | ||
| 121 | this.getDetail() | ||
| 122 | if (this.formData.ysxlh) { | ||
| 123 | this.disabled = true | ||
| 124 | } else { | ||
| 125 | this.disabled = false | ||
| 126 | } | ||
| 127 | }, | ||
| 128 | methods: { | ||
| 129 | /** | ||
| 130 | * @description: 获取详细信息 | ||
| 131 | * @author: renchao | ||
| 132 | */ | ||
| 133 | getDetail () { | ||
| 134 | this.loading = true | ||
| 135 | getBdcqzDetail(this.formData.bsmBdcqz).then(res => { | ||
| 136 | this.bdcqz = res.result | ||
| 137 | this.loading = false | ||
| 138 | if (this.bdcqz.ysxlh) this.ruleForm.ysxlh = this.bdcqz.ysxlh | ||
| 139 | if (this.bdcqz.bdcqzlx == 1) { | ||
| 140 | this.drawTextOnImage() | ||
| 141 | } else { | ||
| 142 | this.drawTextzmImage() | ||
| 143 | } | ||
| 144 | }) | ||
| 145 | }, | ||
| 146 | /** | ||
| 147 | * @description: 获取印刷序列号列表 | ||
| 148 | * @author: renchao | ||
| 149 | */ | ||
| 150 | ysxlhList () { | ||
| 151 | readYsxlh({ zslx: this.formData.bdcqzlx }).then((res) => { | ||
| 152 | if (res.code === 200) { | ||
| 153 | this.ysxlh = res.result; | ||
| 154 | } | ||
| 155 | }) | ||
| 156 | }, | ||
| 157 | /** | ||
| 158 | * @description: handleSelect | ||
| 159 | * @param {*} val | ||
| 160 | * @author: renchao | ||
| 161 | */ | ||
| 162 | handleSelect (val) { | ||
| 163 | this.bdcqz.ysxlh = this.ruleForm.ysxlh | ||
| 164 | if (this.bdcqz.bdcqzlx == 1) { | ||
| 165 | this.drawTextOnImage() | ||
| 166 | } else { | ||
| 167 | this.drawTextzmImage() | ||
| 168 | } | ||
| 169 | }, | ||
| 170 | /** | ||
| 171 | * @description: closeInvalidDiglog | ||
| 172 | * @author: renchao | ||
| 173 | */ | ||
| 174 | closeInvalidDiglog () { | ||
| 175 | this.zfyy = ""; | ||
| 176 | this.invalidDiglog = false | ||
| 177 | }, | ||
| 178 | /** | ||
| 179 | * @description: handleZF | ||
| 180 | * @author: renchao | ||
| 181 | */ | ||
| 182 | handleZF () { | ||
| 183 | this.invalidDiglog = true | ||
| 184 | }, | ||
| 185 | /** | ||
| 186 | * @description: 作废缮证信息 | ||
| 187 | * @author: renchao | ||
| 188 | */ | ||
| 189 | confirmInvalid () { | ||
| 190 | store.dispatch('user/reWorkFresh', false) | ||
| 191 | invalidCertificate({ bsmBdcqz: this.bdcqz.bsmBdcqz, zfyy: this.zfyy }).then((res) => { | ||
| 192 | if (res.code === 200) { | ||
| 193 | this.$message.success("作废成功"); | ||
| 194 | this.disabled = false | ||
| 195 | this.invalidDiglog = false; | ||
| 196 | this.zfyy = '' | ||
| 197 | this.ruleForm.ysxlh = '' | ||
| 198 | this.bdcqz.ysxlh = '' | ||
| 199 | if (this.bdcqz.bdcqzlx == 1) { | ||
| 200 | this.drawTextOnImage() | ||
| 201 | } else { | ||
| 202 | this.drawTextzmImage() | ||
| 203 | } | ||
| 204 | store.dispatch('user/reWorkFresh', true) | ||
| 205 | } else { | ||
| 206 | this.$message.error(res.message); | ||
| 207 | } | ||
| 208 | }) | ||
| 209 | }, | ||
| 210 | /** | ||
| 211 | * @description: 不动产证书 | ||
| 212 | * @author: renchao | ||
| 213 | */ | ||
| 214 | drawTextOnImage1 () { | ||
| 215 | const canvas = this.$refs.zs1; | ||
| 216 | const context = canvas.getContext('2d'); | ||
| 217 | const image = new Image(); | ||
| 218 | image.onload = () => { | ||
| 219 | context.drawImage(image, 0, 0); | ||
| 220 | context.font = '18px 楷体'; | ||
| 221 | context.fillStyle = '#000000'; | ||
| 222 | let date = this.bdcqz.djsj.split(' ')[0].split('/'); | ||
| 223 | let nian = date[0] | ||
| 224 | let yue = date[1] | ||
| 225 | let ri = date[2] | ||
| 226 | this.bdcqz.nian = nian | ||
| 227 | this.bdcqz.yue = yue | ||
| 228 | this.bdcqz.ri = ri | ||
| 229 | context.fillText(nian ? nian : '', 780, 499); | ||
| 230 | context.fillText(yue ? yue : '', 840, 499); | ||
| 231 | context.fillText(ri ? ri : '', 885, 499); | ||
| 232 | QRCode.toDataURL(this.bdcqz.bdcqzh, { margin: 0 }) | ||
| 233 | .then(url => { | ||
| 234 | const qrImage = new Image(); | ||
| 235 | this.bdcqz.qrImage = url; // 将二维码图片的 URL 存储到 bdcqz 对象的 qrImage 属性中 | ||
| 236 | qrImage.onload = () => { | ||
| 237 | context.drawImage(qrImage, 670, 400, 100, 100); | ||
| 238 | }; | ||
| 239 | qrImage.src = url; | ||
| 240 | }) | ||
| 241 | .catch(error => { | ||
| 242 | console.error(error); | ||
| 243 | }); | ||
| 244 | context.fillText(this.bdcqz.bdcqzbm ? this.bdcqz.bdcqzbm : '', 745, 633); | ||
| 245 | }; | ||
| 246 | image.src = this.imgSrc1; | ||
| 247 | }, | ||
| 248 | drawTextOnImage () { | ||
| 249 | this.drawTextOnImage1() | ||
| 250 | function getByteLen (val) { | ||
| 251 | var len = 0; | ||
| 252 | if (!val) return len; | ||
| 253 | for (var i = 0; i < val.length; i++) { | ||
| 254 | var length = val.charCodeAt(i); | ||
| 255 | if (length >= 0 && length <= 128) { | ||
| 256 | len += 1; | ||
| 257 | } else { | ||
| 258 | len += 2; | ||
| 259 | } | ||
| 260 | } | ||
| 261 | return len; | ||
| 262 | } | ||
| 263 | const canvas = this.$refs.zs; | ||
| 264 | const context = canvas.getContext('2d'); | ||
| 265 | const image = new Image(); | ||
| 266 | image.onload = () => { | ||
| 267 | context.drawImage(image, 0, 0); | ||
| 268 | context.font = '18px 楷体'; | ||
| 269 | context.fillStyle = '#000000'; | ||
| 270 | context.fillText(this.bdcqz.sjjc ? this.bdcqz.sjjc : '', 60, 56); | ||
| 271 | context.fillText(this.bdcqz.djnd ? this.bdcqz.djnd : '', 113, 56); | ||
| 272 | context.fillText(this.bdcqz.sxqc ? this.bdcqz.sxqc : '', 180, 56); | ||
| 273 | context.fillText(this.bdcqz.sxh ? this.bdcqz.sxh : '', 370, 56); | ||
| 274 | context.fillText(this.bdcqz.qlr ? this.bdcqz.qlr : '', 129, 97); | ||
| 275 | context.fillText(this.bdcqz.gyqk ? this.bdcqz.gyqk : '', 129, 136); | ||
| 276 | |||
| 277 | this.bdcdyh = this.bdcqz.bdcdyh.slice(0, 6) + ' ' + this.bdcqz.bdcdyh.slice(6, 12) + ' ' + | ||
| 278 | this.bdcqz.bdcdyh.slice(12, 19) + ' ' + this.bdcqz.bdcdyh.slice(19, this.bdcqz.bdcdyh.length) | ||
| 279 | context.fillText(this.bdcdyh ? this.bdcdyh : '', 129, 223); | ||
| 280 | |||
| 281 | |||
| 282 | |||
| 283 | context.fillText(this.bdcqz.qllx ? this.bdcqz.qllx : '', 129, 263); | ||
| 284 | context.fillText(this.bdcqz.qlxz ? this.bdcqz.qlxz : '', 129, 303); | ||
| 285 | context.fillText(this.bdcqz.yt ? this.bdcqz.yt : '', 129, 346); | ||
| 286 | let lines6 = this.bdcqz.mj ? this.bdcqz.mj.split(' ') : []; | ||
| 287 | if (getByteLen(this.bdcqz.mj) > 37) { | ||
| 288 | lines6.forEach((line, index) => { | ||
| 289 | const y = 378 + (index * 27); // 每行文本的垂直位置 | ||
| 290 | let currentLine = ''; | ||
| 291 | let arr = []; | ||
| 292 | for (let word of line) { | ||
| 293 | const testLine = currentLine + word; | ||
| 294 | const lineWidth = context.measureText(testLine).width; | ||
| 295 | if (lineWidth <= 336) { | ||
| 296 | currentLine = testLine; | ||
| 297 | } else { | ||
| 298 | arr.push(currentLine); | ||
| 299 | currentLine = word; | ||
| 300 | } | ||
| 301 | } | ||
| 302 | arr.push(currentLine); | ||
| 303 | arr.forEach((line, index) => { | ||
| 304 | context.fillText(line, 129, y + (index * 20)); // 调整行高 | ||
| 305 | }) | ||
| 306 | }) | ||
| 307 | } else { | ||
| 308 | lines6.forEach((line, index) => { | ||
| 309 | const y = 386 + (index * 27); // 每行文本的垂直位置 | ||
| 310 | let currentLine = ''; | ||
| 311 | let arr = []; | ||
| 312 | for (let word of line) { | ||
| 313 | const testLine = currentLine + word; | ||
| 314 | const lineWidth = context.measureText(testLine).width; | ||
| 315 | if (lineWidth <= 336) { | ||
| 316 | currentLine = testLine; | ||
| 317 | } else { | ||
| 318 | arr.push(currentLine); | ||
| 319 | currentLine = word; | ||
| 320 | } | ||
| 321 | } | ||
| 322 | arr.push(currentLine); | ||
| 323 | arr.forEach((line, index) => { | ||
| 324 | context.fillText(line, 129, y + (index * 20)); // 调整行高 | ||
| 325 | }) | ||
| 326 | }) | ||
| 327 | } | ||
| 328 | // 权利其他状态 | ||
| 329 | const maxWidth = 332; // 最大宽度限制 | ||
| 330 | let lines = this.bdcqz.qlqtzk ? this.bdcqz.qlqtzk.split('\n').filter(i => i && i.trim()) : []; | ||
| 331 | for (let i = 0; i < lines.length; i++) { | ||
| 332 | let num = Math.ceil(getByteLen(lines[i]) / 37) | ||
| 333 | if (getByteLen(lines[i]) > 37) { | ||
| 334 | let currentLine = ''; | ||
| 335 | let arr = []; | ||
| 336 | for (let word of lines[i]) { | ||
| 337 | const testLine = currentLine + word; | ||
| 338 | const lineWidth = context.measureText(testLine).width; | ||
| 339 | if (lineWidth <= maxWidth) { | ||
| 340 | currentLine = testLine; | ||
| 341 | } else { | ||
| 342 | arr.push(currentLine); | ||
| 343 | currentLine = word; | ||
| 344 | } | ||
| 345 | } | ||
| 346 | arr.push(currentLine); | ||
| 347 | if (i > 0) { | ||
| 348 | arr.forEach((line, index) => { | ||
| 349 | context.fillText(line, 129, 495 + (29 * (i - 1)) + 4 * num + (index * 14)); // 调整行高 | ||
| 350 | }) | ||
| 351 | } else { | ||
| 352 | arr.forEach((line, index) => { | ||
| 353 | context.fillText(line, 129, 493 + (26 * (i - 1)) + (index * 14)); // 调整行高 | ||
| 354 | }) | ||
| 355 | } | ||
| 356 | } else { | ||
| 357 | if (i > 0) { | ||
| 358 | context.fillText(lines[i] ? lines[i] : '', 129, 500 + 4 * num + (29 * (i - 1))); | ||
| 359 | } else { | ||
| 360 | context.fillText(lines[i] ? lines[i] : '', 129, 505 + (27 * (i - 1))); | ||
| 361 | } | ||
| 362 | } | ||
| 363 | } | ||
| 364 | |||
| 365 | let lines1 = this.bdcqz.fj ? this.bdcqz.fj.split('\n').filter(i => i && i.trim()) : []; | ||
| 366 | lines1.forEach((line, index) => { | ||
| 367 | const y = 100 + (index * 30); // 每行文本的垂直位置 | ||
| 368 | let currentLine = ''; | ||
| 369 | let arr = []; | ||
| 370 | for (let word of line) { | ||
| 371 | const testLine = currentLine + word; | ||
| 372 | const lineWidth = context.measureText(testLine).width; | ||
| 373 | if (lineWidth <= 395) { | ||
| 374 | currentLine = testLine; | ||
| 375 | } else { | ||
| 376 | arr.push(currentLine); | ||
| 377 | currentLine = word; | ||
| 378 | } | ||
| 379 | } | ||
| 380 | arr.push(currentLine); | ||
| 381 | arr.forEach((line, index) => { | ||
| 382 | context.fillText(line, 580, y + (index * 30)); // 调整行高 | ||
| 383 | }) | ||
| 384 | }) | ||
| 385 | let lines3 = this.bdcqz.syqx ? this.bdcqz.syqx.split(' ') : []; | ||
| 386 | if (getByteLen(this.bdcqz.syqx) > 37) { | ||
| 387 | lines3.forEach((line, index) => { | ||
| 388 | const y = 423 + (index * 27); // 每行文本的垂直位置 | ||
| 389 | let currentLine = ''; | ||
| 390 | let arr = []; | ||
| 391 | for (let word of line) { | ||
| 392 | const testLine = currentLine + word; | ||
| 393 | const lineWidth = context.measureText(testLine).width; | ||
| 394 | if (lineWidth <= 330) { | ||
| 395 | currentLine = testLine; | ||
| 396 | } else { | ||
| 397 | arr.push(currentLine); | ||
| 398 | currentLine = word; | ||
| 399 | } | ||
| 400 | } | ||
| 401 | arr.push(currentLine); | ||
| 402 | arr.forEach((line, index) => { | ||
| 403 | context.fillText(line, 129, y + (index * 20)); // 调整行高 | ||
| 404 | }) | ||
| 405 | }) | ||
| 406 | } else { | ||
| 407 | lines3.forEach((line, index) => { | ||
| 408 | const y = 430 + (index * 27); // 每行文本的垂直位置 | ||
| 409 | let currentLine = ''; | ||
| 410 | let arr = []; | ||
| 411 | for (let word of line) { | ||
| 412 | const testLine = currentLine + word; | ||
| 413 | const lineWidth = context.measureText(testLine).width; | ||
| 414 | if (lineWidth <= 315) { | ||
| 415 | currentLine = testLine; | ||
| 416 | } else { | ||
| 417 | arr.push(currentLine); | ||
| 418 | currentLine = word; | ||
| 419 | } | ||
| 420 | } | ||
| 421 | arr.push(currentLine); | ||
| 422 | arr.forEach((line, index) => { | ||
| 423 | context.fillText(line, 129, y + (index * 20)); // 调整行高 | ||
| 424 | }) | ||
| 425 | }) | ||
| 426 | } | ||
| 427 | |||
| 428 | let lines2 = this.bdcqz.zl ? this.bdcqz.zl.split(' ') : []; | ||
| 429 | if (getByteLen(this.bdcqz.zl) > 37) { | ||
| 430 | lines2.forEach((line, index) => { | ||
| 431 | const y = 170 + (index * 20); // 每行文本的垂直位置 | ||
| 432 | let currentLine = ''; | ||
| 433 | let arr = []; | ||
| 434 | for (let word of line) { | ||
| 435 | const testLine = currentLine + word; | ||
| 436 | const lineWidth = context.measureText(testLine).width; | ||
| 437 | if (lineWidth <= 336) { | ||
| 438 | currentLine = testLine; | ||
| 439 | } else { | ||
| 440 | arr.push(currentLine); | ||
| 441 | currentLine = word; | ||
| 442 | } | ||
| 443 | } | ||
| 444 | arr.push(currentLine); | ||
| 445 | arr.forEach((line, index) => { | ||
| 446 | context.fillText(line, 129, y + (index * 20)); // 调整行高 | ||
| 447 | }) | ||
| 448 | }) | ||
| 449 | } else { | ||
| 450 | lines2.forEach((line, index) => { | ||
| 451 | const y = 180 + (index * 20); // 每行文本的垂直位置 | ||
| 452 | let currentLine = ''; | ||
| 453 | let arr = []; | ||
| 454 | for (let word of line) { | ||
| 455 | const testLine = currentLine + word; | ||
| 456 | const lineWidth = context.measureText(testLine).width; | ||
| 457 | if (lineWidth <= 336) { | ||
| 458 | currentLine = testLine; | ||
| 459 | } else { | ||
| 460 | arr.push(currentLine); | ||
| 461 | currentLine = word; | ||
| 462 | } | ||
| 463 | } | ||
| 464 | arr.push(currentLine); | ||
| 465 | arr.forEach((line, index) => { | ||
| 466 | context.fillText(line, 129, y + (index * 20)); // 调整行高 | ||
| 467 | }) | ||
| 468 | }) | ||
| 469 | } | ||
| 470 | } | ||
| 471 | image.src = this.imgSrc | ||
| 472 | }, | ||
| 473 | /** | ||
| 474 | * @description: 不动产证明 | ||
| 475 | * @author: renchao | ||
| 476 | */ | ||
| 477 | drawTextzmImage () { | ||
| 478 | function getByteLen (val) { | ||
| 479 | var len = 0; | ||
| 480 | if (!val) return len; | ||
| 481 | for (var i = 0; i < val.length; i++) { | ||
| 482 | var length = val.charCodeAt(i); | ||
| 483 | if (length >= 0 && length <= 128) { | ||
| 484 | len += 1; | ||
| 485 | } else { | ||
| 486 | len += 2; | ||
| 487 | } | ||
| 488 | } | ||
| 489 | return len; | ||
| 490 | } | ||
| 491 | |||
| 492 | const canvas = this.$refs.zm; | ||
| 493 | const context = canvas.getContext('2d'); | ||
| 494 | const image = new Image(); | ||
| 495 | image.onload = () => { | ||
| 496 | context.drawImage(image, 0, 0); | ||
| 497 | context.font = '18px 楷体'; | ||
| 498 | context.fillStyle = '#000000'; | ||
| 499 | // ysxlh | ||
| 500 | context.fillText(this.bdcqz.ysxlh ? this.bdcqz.ysxlh : '', 280, 712); | ||
| 501 | // djsj | ||
| 502 | if (this.bdcqz.djsj) { | ||
| 503 | let djsjList = this.bdcqz.djsj.split(' ')[0].split('/') | ||
| 504 | context.fillText(djsjList[0] ? djsjList[0] : '', 327, 580); | ||
| 505 | context.fillText(djsjList[1] ? djsjList[1] : '', 393, 580); | ||
| 506 | context.fillText(djsjList[2] ? djsjList[2] : '', 443, 580); | ||
| 507 | } | ||
| 508 | context.fillText(this.bdcqz.sjjc ? this.bdcqz.sjjc : '', 620, 125); | ||
| 509 | context.fillText(this.bdcqz.djnd ? this.bdcqz.djnd : '', 665, 125); | ||
| 510 | // context.fillText(this.bdcqz.sxqc ? this.bdcqz.sxqc : '', 750, 125); | ||
| 511 | |||
| 512 | if (getByteLen(this.bdcqz.sxqc) > 14) { | ||
| 513 | const originalFont = context.font; | ||
| 514 | // 设置新的字体大小 | ||
| 515 | context.font = '14px 楷体'; // 替换为你想要的字体和大小 | ||
| 516 | // 绘制 bdcdyh | ||
| 517 | context.fillText(this.bdcqz.sxqc ? this.bdcqz.sxqc : '', 725, 125); | ||
| 518 | // 恢复原始字体设置 | ||
| 519 | context.font = originalFont; | ||
| 520 | } else { | ||
| 521 | context.fillText(this.bdcqz.sxqc ? this.bdcqz.sxqc : '', 755, 125); | ||
| 522 | } | ||
| 523 | |||
| 524 | context.fillText(this.bdcqz.sxh ? this.bdcqz.sxh : '', 960, 123); | ||
| 525 | context.fillText(this.bdcqz.zmqlhsx ? this.bdcqz.zmqlhsx : '', 775, 180); | ||
| 526 | // context.fillText(this.bdcqz.qlr ? this.bdcqz.qlr : '', 775, 228); | ||
| 527 | // 权利人 | ||
| 528 | let qlrlines = this.bdcqz.qlr | ||
| 529 | if (getByteLen(this.bdcqz.qlr) > 32) { | ||
| 530 | let currentLine = ''; | ||
| 531 | let arr = []; | ||
| 532 | for (let word of qlrlines) { | ||
| 533 | const testLine = currentLine + word; | ||
| 534 | const lineWidth = context.measureText(testLine).width; | ||
| 535 | if (lineWidth <= 295) { | ||
| 536 | currentLine = testLine; | ||
| 537 | } else { | ||
| 538 | arr.push(currentLine); | ||
| 539 | currentLine = word; | ||
| 540 | } | ||
| 541 | } | ||
| 542 | arr.push(currentLine); // 将最后一行添加到数组 | ||
| 543 | // 绘制所有行 | ||
| 544 | for (let i = 0; i < arr.length; i++) { | ||
| 545 | context.fillText(arr[i], 775, 218 + i * 20); // lineHeight 为行高 | ||
| 546 | } | ||
| 547 | } else { | ||
| 548 | context.fillText(this.bdcqz.qlr ? this.bdcqz.qlr : '', 775, 228); | ||
| 549 | } | ||
| 550 | // 义务人 | ||
| 551 | // context.fillText(this.bdcqz.ywr ? this.bdcqz.ywr : '', 775, 275); | ||
| 552 | |||
| 553 | let ywrlines = this.bdcqz.ywr | ||
| 554 | if (getByteLen(this.bdcqz.ywr) > 32) { | ||
| 555 | let currentLine = ''; | ||
| 556 | let arr = []; | ||
| 557 | for (let word of ywrlines) { | ||
| 558 | const testLine = currentLine + word; | ||
| 559 | const lineWidth = context.measureText(testLine).width; | ||
| 560 | if (lineWidth <= 295) { | ||
| 561 | currentLine = testLine; | ||
| 562 | } else { | ||
| 563 | arr.push(currentLine); | ||
| 564 | currentLine = word; | ||
| 565 | } | ||
| 566 | } | ||
| 567 | arr.push(currentLine); // 将最后一行添加到数组 | ||
| 568 | // 绘制所有行 | ||
| 569 | for (let i = 0; i < arr.length; i++) { | ||
| 570 | context.fillText(arr[i], 775, 268 + i * 20); // lineHeight 为行高 | ||
| 571 | } | ||
| 572 | } else { | ||
| 573 | context.fillText(this.bdcqz.ywr ? this.bdcqz.ywr : '', 775, 275); | ||
| 574 | } | ||
| 575 | |||
| 576 | |||
| 577 | let lines2 = this.bdcqz.zl ? this.bdcqz.zl.split(' ') : []; | ||
| 578 | if (getByteLen(this.bdcqz.zl) > 32) { | ||
| 579 | lines2.forEach((line, index) => { | ||
| 580 | const y = 315 + (index * 20); // 每行文本的垂直位置 | ||
| 581 | let currentLine = ''; | ||
| 582 | let arr = []; | ||
| 583 | for (let word of line) { | ||
| 584 | const testLine = currentLine + word; | ||
| 585 | const lineWidth = context.measureText(testLine).width; | ||
| 586 | if (lineWidth <= 295) { | ||
| 587 | currentLine = testLine; | ||
| 588 | } else { | ||
| 589 | arr.push(currentLine); | ||
| 590 | currentLine = word; | ||
| 591 | } | ||
| 592 | } | ||
| 593 | arr.push(currentLine); | ||
| 594 | arr.forEach((line, index) => { | ||
| 595 | context.fillText(line, 775, y + (index * 20)); // 调整行高 | ||
| 596 | }) | ||
| 597 | }) | ||
| 598 | } else { | ||
| 599 | lines2.forEach((line, index) => { | ||
| 600 | const y = 325 + (index * 20); // 每行文本的垂直位置 | ||
| 601 | let currentLine = ''; | ||
| 602 | let arr = []; | ||
| 603 | for (let word of line) { | ||
| 604 | const testLine = currentLine + word; | ||
| 605 | const lineWidth = context.measureText(testLine).width; | ||
| 606 | if (lineWidth <= 295) { | ||
| 607 | currentLine = testLine; | ||
| 608 | } else { | ||
| 609 | arr.push(currentLine); | ||
| 610 | currentLine = word; | ||
| 611 | } | ||
| 612 | } | ||
| 613 | arr.push(currentLine); | ||
| 614 | arr.forEach((line, index) => { | ||
| 615 | context.fillText(line, 775, y + (index * 20)); // 调整行高 | ||
| 616 | }) | ||
| 617 | }) | ||
| 618 | } | ||
| 619 | // bdcdyh | ||
| 620 | this.bdcdyh = this.bdcqz.bdcdyh.slice(0, 6) + ' ' + this.bdcqz.bdcdyh.slice(6, 12) + ' ' + | ||
| 621 | this.bdcqz.bdcdyh.slice(12, 19) + ' ' + this.bdcqz.bdcdyh.slice(19, this.bdcqz.bdcdyh.length) | ||
| 622 | // 保存当前字体设置 | ||
| 623 | const originalFont = context.font; | ||
| 624 | // 设置新的字体大小 | ||
| 625 | context.font = '16px 楷体'; // 替换为你想要的字体和大小 | ||
| 626 | // 绘制 bdcdyh | ||
| 627 | context.fillText(this.bdcdyh ? this.bdcdyh : '', 775, 373); | ||
| 628 | // 恢复原始字体设置 | ||
| 629 | context.font = originalFont; | ||
| 630 | // qlqtzk | ||
| 631 | function getByteLenBdcdy (val) { | ||
| 632 | var encoder = new TextEncoder('utf-8'); | ||
| 633 | return encoder.encode(val).length; | ||
| 634 | } | ||
| 635 | const maxWidth = 290; // 最大宽度限制 | ||
| 636 | let lines = this.bdcqz.qlqtzk ? this.bdcqz.qlqtzk.split('\n').filter(i => i && i.trim()) : []; | ||
| 637 | let bdcdyNum = Math.ceil(getByteLenBdcdy(lines[0]) / 43) | ||
| 638 | // 单独处理不动产单元号 | ||
| 639 | let linesBdcdy = lines[0] ? lines[0].split(' ') : []; | ||
| 640 | if (getByteLenBdcdy(lines[0]) > 43) { | ||
| 641 | linesBdcdy.forEach((line, index) => { | ||
| 642 | const y = 412 + (index * 17); // 每行文本的垂直位置 | ||
| 643 | let currentLine = ''; | ||
| 644 | let arr = []; | ||
| 645 | for (let word of line) { | ||
| 646 | const testLine = currentLine + word; | ||
| 647 | const lineWidth = context.measureText(testLine).width; | ||
| 648 | if (lineWidth <= maxWidth) { | ||
| 649 | currentLine = testLine; | ||
| 650 | } else { | ||
| 651 | arr.push(currentLine); | ||
| 652 | currentLine = word; | ||
| 653 | } | ||
| 654 | } | ||
| 655 | arr.push(currentLine); | ||
| 656 | arr.forEach((line, index) => { | ||
| 657 | context.fillText(line, 770, y + (index * 17)); // 调整行高 | ||
| 658 | }) | ||
| 659 | }) | ||
| 660 | } else { | ||
| 661 | linesBdcdy.forEach((line, index) => { | ||
| 662 | const y = 418 + (index * 17); // 每行文本的垂直位置 | ||
| 663 | let currentLine = ''; | ||
| 664 | let arr = []; | ||
| 665 | for (let word of line) { | ||
| 666 | const testLine = currentLine + word; | ||
| 667 | const lineWidth = context.measureText(testLine).width; | ||
| 668 | if (lineWidth <= maxWidth) { | ||
| 669 | currentLine = testLine; | ||
| 670 | } else { | ||
| 671 | arr.push(currentLine); | ||
| 672 | currentLine = word; | ||
| 673 | } | ||
| 674 | } | ||
| 675 | arr.push(currentLine); | ||
| 676 | arr.forEach((line, index) => { | ||
| 677 | context.fillText(line, 770, y + (index * 17)); // 调整行高 | ||
| 678 | }) | ||
| 679 | }) | ||
| 680 | } | ||
| 681 | |||
| 682 | for (let i = 1; i < lines.length; i++) { | ||
| 683 | let num = Math.ceil(getByteLen(lines[i]) / 32) | ||
| 684 | if (getByteLen(lines[i]) > 32) { | ||
| 685 | let currentLine = ''; | ||
| 686 | let arr = []; | ||
| 687 | for (let word of lines[i]) { | ||
| 688 | const testLine = currentLine + word; | ||
| 689 | const lineWidth = context.measureText(testLine).width; | ||
| 690 | if (lineWidth <= maxWidth) { | ||
| 691 | currentLine = testLine; | ||
| 692 | } else { | ||
| 693 | arr.push(currentLine); | ||
| 694 | currentLine = word; | ||
| 695 | } | ||
| 696 | } | ||
| 697 | arr.push(currentLine); | ||
| 698 | if (i > 0) { | ||
| 699 | arr.forEach((line, index) => { | ||
| 700 | context.fillText(line, 770, 408 + (bdcdyNum * 15) + (24 * (i - 1)) + 5 * num + (index * 17)); // 调整行高 | ||
| 701 | }) | ||
| 702 | } else { | ||
| 703 | arr.forEach((line, index) => { | ||
| 704 | context.fillText(line, 770, 408 + (bdcdyNum * 15) + (24 * (i - 1)) + (index * 17)); // 调整行高 | ||
| 705 | }) | ||
| 706 | } | ||
| 707 | } else { | ||
| 708 | if (i > 0) { | ||
| 709 | context.fillText(lines[i] ? lines[i] : '', 770, 417 + (bdcdyNum * 15) + 6 * num + (25 * (i - 1))); | ||
| 710 | } else { | ||
| 711 | context.fillText(lines[i] ? lines[i] : '', 770, 417 + (bdcdyNum * 15) + (25 * (i - 1))); | ||
| 712 | } | ||
| 713 | } | ||
| 714 | } | ||
| 715 | // fj | ||
| 716 | let lines1 = this.bdcqz.fj ? this.bdcqz.fj.split('\n').filter(i => i && i.trim()) : []; | ||
| 717 | for (let i = 0; i < lines1.length; i++) { | ||
| 718 | let num = Math.ceil(getByteLen(lines1[i]) / 37) | ||
| 719 | if (getByteLen(lines1[i]) > 37) { | ||
| 720 | let currentLine = ''; | ||
| 721 | let arr = []; | ||
| 722 | for (let word of lines1[i]) { | ||
| 723 | const testLine = currentLine + word; | ||
| 724 | const lineWidth = context.measureText(testLine).width; | ||
| 725 | if (lineWidth <= maxWidth) { | ||
| 726 | currentLine = testLine; | ||
| 727 | } else { | ||
| 728 | arr.push(currentLine); | ||
| 729 | currentLine = word; | ||
| 730 | } | ||
| 731 | } | ||
| 732 | arr.push(currentLine); | ||
| 733 | if (i > 0) { | ||
| 734 | arr.forEach((line, index) => { | ||
| 735 | context.fillText(line, 770, 605 + (24 * (i - 1)) + 5 * num + (index * 17)); // 调整行高 | ||
| 736 | }) | ||
| 737 | } else { | ||
| 738 | arr.forEach((line, index) => { | ||
| 739 | context.fillText(line, 770, 605 + (24 * (i - 1)) + (index * 17)); // 调整行高 | ||
| 740 | }) | ||
| 741 | } | ||
| 742 | } else { | ||
| 743 | if (i > 0) { | ||
| 744 | context.fillText(lines1[i] ? lines1[i] : '', 770, 616 + 6 * num + (25 * (i - 1))); | ||
| 745 | } else { | ||
| 746 | context.fillText(lines1[i] ? lines1[i] : '', 770, 616 + (25 * (i - 1))); | ||
| 747 | } | ||
| 748 | } | ||
| 749 | } | ||
| 750 | } | ||
| 751 | image.src = this.bdczmSrc; | ||
| 752 | }, | ||
| 753 | /** | ||
| 754 | * @description: 打印 | ||
| 755 | * @author: renchao | ||
| 756 | */ | ||
| 757 | handlePrint () { | ||
| 758 | let that = this | ||
| 759 | if (this.ruleForm.ysxlh == '') { | ||
| 760 | this.$message.error('请选择印刷序列号'); | ||
| 761 | return; | ||
| 762 | } | ||
| 763 | store.dispatch('user/reWorkFresh', false) | ||
| 764 | if (this.bdcqz.bdcqzlx == 1) { | ||
| 765 | if (this.activeTitle == 'title1') { | ||
| 766 | getPrintTemplateByCode({ tmpno: 'zsdy1' }).then(resInfo => { | ||
| 767 | if (resInfo.code == 200) { | ||
| 768 | //打开模板设计 | ||
| 769 | let LODOP = getLodop(document.getElementById('LODOP_OB'), document.getElementById('LODOP_EM')); | ||
| 770 | LODOP.ADD_PRINT_DATA("ProgramData", resInfo.result.tmpcontent); //装载模板 | ||
| 771 | console.log(that.bdcqz); | ||
| 772 | for (let key in that.bdcqz) { | ||
| 773 | LODOP.SET_PRINT_STYLEA(key, "CONTENT", that.bdcqz[key]); | ||
| 774 | } | ||
| 775 | LODOP.PREVIEW(); | ||
| 776 | } else { | ||
| 777 | that.$message.error(resInfo.message) | ||
| 778 | } | ||
| 779 | that.$popupCacel() | ||
| 780 | //刷新列表 | ||
| 781 | store.dispatch('user/reWorkFresh', true) | ||
| 782 | }) | ||
| 783 | } else { | ||
| 784 | getPrintTemplateByCode({ tmpno: 'zsdy' }).then(resInfo => { | ||
| 785 | if (resInfo.code == 200) { | ||
| 786 | //打开模板设计 | ||
| 787 | let LODOP = getLodop(document.getElementById('LODOP_OB'), document.getElementById('LODOP_EM')); | ||
| 788 | LODOP.ADD_PRINT_DATA("ProgramData", resInfo.result.tmpcontent); //装载模板 | ||
| 789 | |||
| 790 | that.bdcqz.bdcdyh1 = that.bdcqz.bdcdyh.slice(0, 6) + ' ' + that.bdcqz.bdcdyh.slice(6, 12) + ' ' + | ||
| 791 | that.bdcqz.bdcdyh.slice(12, 19) + ' ' + that.bdcqz.bdcdyh.slice(19, that.bdcqz.bdcdyh.length) | ||
| 792 | //todo 调取后端接口获取数据 循环set | ||
| 793 | for (let key in that.bdcqz) { | ||
| 794 | LODOP.SET_PRINT_STYLEA(key, "CONTENT", that.bdcqz[key]); | ||
| 795 | } | ||
| 796 | LODOP.PREVIEW(); | ||
| 797 | } else { | ||
| 798 | that.$message.error(resInfo.message) | ||
| 799 | } | ||
| 800 | that.$popupCacel() | ||
| 801 | //刷新列表 | ||
| 802 | store.dispatch('user/reWorkFresh', true) | ||
| 803 | }) | ||
| 804 | } | ||
| 805 | } else { | ||
| 806 | getPrintTemplateByCode({ tmpno: 'zmdy' }).then(resInfo => { | ||
| 807 | if (resInfo.code == 200) { | ||
| 808 | //打开模板设计 | ||
| 809 | let LODOP = getLodop(document.getElementById('LODOP_OB'), document.getElementById('LODOP_EM')); | ||
| 810 | LODOP.ADD_PRINT_DATA("ProgramData", resInfo.result.tmpcontent); //装载模板 | ||
| 811 | |||
| 812 | // 年月日 | ||
| 813 | this.bdcqz.nian = this.bdcqz.djsj.split(' ')[0].split('/')[0] | ||
| 814 | this.bdcqz.yue = this.bdcqz.djsj.split(' ')[0].split('/')[1] | ||
| 815 | this.bdcqz.ri = this.bdcqz.djsj.split(' ')[0].split('/')[1] | ||
| 816 | this.bdcqz.bdcdyh1 = this.bdcqz.bdcdyh.slice(0, 6) + ' ' + this.bdcqz.bdcdyh.slice(6, 12) + ' ' + | ||
| 817 | this.bdcqz.bdcdyh.slice(12, 19) + ' ' + this.bdcqz.bdcdyh.slice(19, this.bdcqz.bdcdyh.length) | ||
| 818 | //todo 调取后端接口获取数据 循环set | ||
| 819 | for (let key in this.bdcqz) { | ||
| 820 | LODOP.SET_PRINT_STYLEA(key, "CONTENT", this.bdcqz[key]); | ||
| 821 | } | ||
| 822 | LODOP.PREVIEW(); | ||
| 823 | } else { | ||
| 824 | this.$message.error(resInfo.message) | ||
| 825 | } | ||
| 826 | that.$popupCacel() | ||
| 827 | //刷新列表 | ||
| 828 | store.dispatch('user/reWorkFresh', true) | ||
| 829 | }) | ||
| 830 | } | ||
| 831 | }, | ||
| 832 | /** | ||
| 833 | * @description: 保存打印记录 | ||
| 834 | * @author: renchao | ||
| 835 | */ | ||
| 836 | handleSubmit () { | ||
| 837 | let that = this | ||
| 838 | if (this.ruleForm.ysxlh == '') { | ||
| 839 | this.$message.error('请选择印刷序列号'); | ||
| 840 | return; | ||
| 841 | } | ||
| 842 | store.dispatch('user/reWorkFresh', false) | ||
| 843 | this.ruleForm.bsmBdcqz = this.bdcqz.bsmBdcqz; | ||
| 844 | this.ruleForm.bdcqzlx = this.bdcqz.bdcqzlx; | ||
| 845 | this.ruleForm.szzh = this.bdcqz.bdcqzh; | ||
| 846 | this.bdcqz.ysxlh = this.ruleForm.ysxlh | ||
| 847 | certificate(this.ruleForm).then((res) => { | ||
| 848 | if (res.code === 200) { | ||
| 849 | that.$popupCacel() | ||
| 850 | this.handlePrint() | ||
| 851 | } else { | ||
| 852 | this.$message.error(res.message) | ||
| 853 | } | ||
| 854 | store.dispatch('user/reWorkFresh', true) | ||
| 855 | }) | ||
| 856 | } | ||
| 857 | } | ||
| 858 | } | ||
| 859 | </script> | ||
| 860 | <style scoped lang="scss"> | ||
| 861 | @import "~@/styles/mixin.scss"; | ||
| 862 | /deep/.el-tabs__nav-wrap::after { | ||
| 863 | display: none; | ||
| 864 | } | ||
| 865 | /deep/.el-tabs__header { | ||
| 866 | margin: 0; | ||
| 867 | } | ||
| 868 | /deep/.el-form-item--small.el-form-item { | ||
| 869 | margin-bottom: 0; | ||
| 870 | } | ||
| 871 | .zsdy-content { | ||
| 872 | height: 80vh; | ||
| 873 | overflow-y: scroll; | ||
| 874 | } | ||
| 875 | .zs-content { | ||
| 876 | text-align: center; | ||
| 877 | } | ||
| 878 | .invalid-diglog { | ||
| 879 | padding-bottom: 20px; | ||
| 880 | font-size: 16px; | ||
| 881 | font-weight: bold; | ||
| 882 | color: rgb(99, 99, 99); | ||
| 883 | |||
| 884 | .invalid-title { | ||
| 885 | display: flex; | ||
| 886 | align-content: center; | ||
| 887 | |||
| 888 | .invalid-icon { | ||
| 889 | color: rgb(254, 148, 0); | ||
| 890 | font-size: 34px; | ||
| 891 | margin-right: 10px; | ||
| 892 | } | ||
| 893 | |||
| 894 | .invalid-body { | ||
| 895 | line-height: 40px; | ||
| 896 | margin-bottom: 10px; | ||
| 897 | } | ||
| 898 | } | ||
| 899 | |||
| 900 | .invalid-reson { | ||
| 901 | margin-bottom: 10px; | ||
| 902 | } | ||
| 903 | |||
| 904 | .dialog-footer { | ||
| 905 | margin-top: 10px; | ||
| 906 | display: flex; | ||
| 907 | justify-content: flex-end; | ||
| 908 | } | ||
| 909 | } | ||
| 910 | </style> |
| 1 | <!-- | ||
| 2 | * @Description: | ||
| 3 | * @Autor: renchao | ||
| 4 | * @LastEditTime: 2024-01-19 14:45:09 | ||
| 5 | --> | ||
| 6 | <template> | ||
| 7 | <el-form :model="ruleForm" :rules="rules" ref="ruleForm" label-width="100px"> | ||
| 8 | <el-row> | ||
| 9 | <el-col :span="8"> | ||
| 10 | <el-form-item label="发证人姓名"> | ||
| 11 | <el-input v-model="ruleForm.fzrmc" disabled></el-input> | ||
| 12 | </el-form-item> | ||
| 13 | </el-col> | ||
| 14 | <el-col :span="8"> | ||
| 15 | <el-form-item label="发证时间"> | ||
| 16 | <el-input v-model="ruleForm.fzsj" disabled></el-input> | ||
| 17 | </el-form-item> | ||
| 18 | </el-col> | ||
| 19 | <el-col :span="8"> | ||
| 20 | <el-form-item label="发证数量"> | ||
| 21 | <el-input v-model="ruleForm.fzsl" disabled></el-input> | ||
| 22 | </el-form-item> | ||
| 23 | </el-col> | ||
| 24 | </el-row> | ||
| 25 | <lb-table :column="tableData.columns" @row-dblclick="handleRowClick" ref="table" @selection-change="handleSelectionChange" | ||
| 26 | :data="tableData.data" | ||
| 27 | :pagination="false" | ||
| 28 | :calcHeight="300"> | ||
| 29 | </lb-table> | ||
| 30 | <el-row> | ||
| 31 | <el-col :span="3"> | ||
| 32 | <el-form-item label="身份证读卡器"> | ||
| 33 | <el-button type="text" icon="el-icon-tickets" @click="readClick">读取</el-button> | ||
| 34 | </el-form-item> | ||
| 35 | </el-col> | ||
| 36 | <el-col :span="5"> | ||
| 37 | <el-form-item label="领证人" prop="lzrxm" label-width="70px"> | ||
| 38 | <el-input v-model="ruleForm.lzrxm"></el-input> | ||
| 39 | </el-form-item> | ||
| 40 | </el-col> | ||
| 41 | <el-col :span="5"> | ||
| 42 | <el-form-item label="证件类型" prop="lzrzjlb" label-width="80px"> | ||
| 43 | <el-select v-model="ruleForm.lzrzjlb" filterable clearable placeholder="请选择"> | ||
| 44 | <el-option v-for="item in lzrzjlbData" :key="item.dcode" :label="item.dname" :value="item.dcode"> | ||
| 45 | </el-option> | ||
| 46 | </el-select> | ||
| 47 | </el-form-item> | ||
| 48 | </el-col> | ||
| 49 | <el-col :span="5"> | ||
| 50 | <el-form-item label="证件号" prop="lzrzjh" label-width="70px"> | ||
| 51 | <el-input v-model="ruleForm.lzrzjh"></el-input> | ||
| 52 | </el-form-item> | ||
| 53 | </el-col> | ||
| 54 | <el-col :span="5"> | ||
| 55 | <el-form-item label="领证人电话" prop="lzrdh"> | ||
| 56 | <el-input v-model="ruleForm.lzrdh"></el-input> | ||
| 57 | </el-form-item> | ||
| 58 | </el-col> | ||
| 59 | </el-row> | ||
| 60 | <el-form-item class="text-center"> | ||
| 61 | <el-button @click="$popupCacel">取消</el-button> | ||
| 62 | <el-button type="primary" @click="handleSubmit">确定</el-button> | ||
| 63 | </el-form-item> | ||
| 64 | </el-form> | ||
| 65 | </template> | ||
| 66 | <script> | ||
| 67 | const checkPhone = (rule, value, callback) => { | ||
| 68 | let regPone = null | ||
| 69 | let mobile = /^(1[3456789]\d{9})$/ //手机号 | ||
| 70 | let tel = /^((0\d{2,3}-\d{7,8})|(1[3584]\d{9}))$/ // 座机 | ||
| 71 | if (value && value[0] === '0') {// 检查 value 是否存在并且不是 null 或者 undefined | ||
| 72 | regPone = tel | ||
| 73 | } else if (value && value[0] !== '0') { | ||
| 74 | regPone = mobile | ||
| 75 | } | ||
| 76 | if (regPone === null) { | ||
| 77 | return callback( | ||
| 78 | new Error('请输入电话') | ||
| 79 | ) | ||
| 80 | } else if (!regPone.test(value)) { | ||
| 81 | return callback( | ||
| 82 | new Error("请输入正确的电话格式,其中座机格式'区号-座机号码'") | ||
| 83 | ) | ||
| 84 | } else { | ||
| 85 | callback() | ||
| 86 | } | ||
| 87 | }; | ||
| 88 | import Vue from 'vue' | ||
| 89 | import store from '@/store/index.js' | ||
| 90 | import table from "@/utils/mixin/table"; | ||
| 91 | import { getIdCardInfo } from '@/utils/operation.js' | ||
| 92 | import { getUnclaimedBdcqz, issueCertificate, getBdcqzQlr } from "@/api/bdcqz.js"; | ||
| 93 | import { datas } from "../../javascript/fzxxdata"; | ||
| 94 | export default { | ||
| 95 | props: { | ||
| 96 | formData: { | ||
| 97 | type: Object, | ||
| 98 | default: () => { | ||
| 99 | return {} | ||
| 100 | } | ||
| 101 | } | ||
| 102 | }, | ||
| 103 | mixins: [table], | ||
| 104 | data () { | ||
| 105 | return { | ||
| 106 | lzrzjlbData: store.getters.dictData['A30'], | ||
| 107 | ruleForm: { | ||
| 108 | fzrmc: '', | ||
| 109 | fzsj: '', | ||
| 110 | fzsl: '', | ||
| 111 | bdcqzList: [], | ||
| 112 | lzrxm: '', | ||
| 113 | lzrzjlb: '', | ||
| 114 | lzrzjh: '', | ||
| 115 | lzrdh: '' | ||
| 116 | }, | ||
| 117 | rules: { | ||
| 118 | lzrxm: [ | ||
| 119 | { required: true, message: '请输入领证人', trigger: 'blur' } | ||
| 120 | ], | ||
| 121 | lzrzjlb: [ | ||
| 122 | { required: true, message: '请选择证件类型', trigger: 'change' } | ||
| 123 | ], | ||
| 124 | lzrzjh: [ | ||
| 125 | { required: true, message: '请输入证件号', trigger: 'blur' } | ||
| 126 | ], | ||
| 127 | lzrdh: [ | ||
| 128 | { required: true, validator: checkPhone, trigger: ["blur"] } | ||
| 129 | ] | ||
| 130 | }, | ||
| 131 | tableData: { | ||
| 132 | total: 0, | ||
| 133 | columns: datas.columns().lzgrid, | ||
| 134 | data: [] | ||
| 135 | } | ||
| 136 | } | ||
| 137 | }, | ||
| 138 | mounted () { | ||
| 139 | this.$nextTick(() => { | ||
| 140 | this.loadGrid() | ||
| 141 | }) | ||
| 142 | }, | ||
| 143 | methods: { | ||
| 144 | /** | ||
| 145 | * @description: 身份证打卡器 | ||
| 146 | * @author: renchao | ||
| 147 | */ | ||
| 148 | readClick () { | ||
| 149 | function getObjectByValue (arrayOfObjects, value) { | ||
| 150 | var name = '' | ||
| 151 | arrayOfObjects.forEach(item => { | ||
| 152 | if (item.dname.includes(value)) name = item.dcode | ||
| 153 | }) | ||
| 154 | return name | ||
| 155 | } | ||
| 156 | getIdCardInfo(this.BASE_API.gaopaiyi).then(res => { | ||
| 157 | if (this.BASE_API.gaopaiyi == 'jy') { | ||
| 158 | const { | ||
| 159 | Name, | ||
| 160 | IdNo, | ||
| 161 | } = JSON.parse(res) | ||
| 162 | if (Name) { | ||
| 163 | this.ruleForm.lzrxm = Name; | ||
| 164 | this.ruleForm.lzrzjlb = '1'; | ||
| 165 | this.ruleForm.lzrzjh = IdNo; | ||
| 166 | this.$message({ | ||
| 167 | message: '读取成功!', | ||
| 168 | type: 'success' | ||
| 169 | }) | ||
| 170 | } else { | ||
| 171 | this.$message({ | ||
| 172 | message: '请放置身份证', | ||
| 173 | type: 'warning' | ||
| 174 | }) | ||
| 175 | } | ||
| 176 | } else { | ||
| 177 | if (res.data.code == 0) { | ||
| 178 | let data = res.data.IDCardInfo | ||
| 179 | this.ruleForm.lzrxm = data.name | ||
| 180 | this.ruleForm.lzrzjlb = '1' | ||
| 181 | this.ruleForm.lzrzjh = data.cardID | ||
| 182 | this.$message({ | ||
| 183 | message: '读取成功!', | ||
| 184 | type: 'success' | ||
| 185 | }) | ||
| 186 | } else { | ||
| 187 | this.$message({ | ||
| 188 | message: res.data.message, | ||
| 189 | type: 'warning' | ||
| 190 | }) | ||
| 191 | } | ||
| 192 | } | ||
| 193 | }) | ||
| 194 | }, | ||
| 195 | /** | ||
| 196 | * @description: 列表初始化 | ||
| 197 | * @author: renchao | ||
| 198 | */ | ||
| 199 | loadGrid () { | ||
| 200 | let that = this | ||
| 201 | getUnclaimedBdcqz({ bsmSlsq: Vue.prototype.$currentRoute.query.bsmSlsq }).then(res => { | ||
| 202 | if (res.code === 200) { | ||
| 203 | this.tableData.data = res.result.list; | ||
| 204 | this.$nextTick(() => { | ||
| 205 | this.tableData.data.forEach(item => { | ||
| 206 | that.$refs.table.toggleRowSelection(item) | ||
| 207 | }) | ||
| 208 | }) | ||
| 209 | this.ruleForm.fzrmc = res.result.fzrmc | ||
| 210 | this.ruleForm.fzsj = res.result.fzsj | ||
| 211 | this.ruleForm.fzsl = res.result.fzsl | ||
| 212 | this.ruleForm.bdcqzList = res.result.list; | ||
| 213 | res.result.list.length && this.getQlr(res.result.list[0].bsmBdcqz) | ||
| 214 | } | ||
| 215 | }) | ||
| 216 | }, | ||
| 217 | /** | ||
| 218 | * @description: 获取权利人信息 | ||
| 219 | * @author: renchao | ||
| 220 | */ | ||
| 221 | getQlr (bsmBdcqz) { | ||
| 222 | getBdcqzQlr(bsmBdcqz).then(res => { | ||
| 223 | if (res.code === 200) { | ||
| 224 | this.ruleForm.lzrxm = res.result.qlrmc; | ||
| 225 | this.ruleForm.lzrzjlb = res.result.zjzl; | ||
| 226 | this.ruleForm.lzrzjh = res.result.zjh; | ||
| 227 | this.ruleForm.lzrdh = res.result.dh; | ||
| 228 | } | ||
| 229 | }) | ||
| 230 | }, | ||
| 231 | /** | ||
| 232 | * @description: handleSelectionChange | ||
| 233 | * @param {*} val | ||
| 234 | * @author: renchao | ||
| 235 | */ | ||
| 236 | handleSelectionChange (val) { | ||
| 237 | this.ruleForm.bdcqzList = val | ||
| 238 | }, | ||
| 239 | /** | ||
| 240 | * @description: handleRowClick | ||
| 241 | * @param {*} row | ||
| 242 | * @author: renchao | ||
| 243 | */ | ||
| 244 | handleRowClick (row) { | ||
| 245 | this.$refs.table.toggleRowSelection(row) | ||
| 246 | }, | ||
| 247 | /** | ||
| 248 | * @description: handleSubmit | ||
| 249 | * @author: renchao | ||
| 250 | */ | ||
| 251 | handleSubmit () { | ||
| 252 | this.$refs.ruleForm.validate(valid => { | ||
| 253 | if (valid) { | ||
| 254 | issueCertificate(this.ruleForm).then(res => { | ||
| 255 | if (res.code == 200) { | ||
| 256 | this.$message.success('保存成功'); | ||
| 257 | //刷新列表 | ||
| 258 | store.dispatch('user/reWorkFresh', true) | ||
| 259 | this.$popupCacel() | ||
| 260 | } else { | ||
| 261 | this.$message.error(res.message) | ||
| 262 | } | ||
| 263 | }) | ||
| 264 | } else { | ||
| 265 | return false; | ||
| 266 | } | ||
| 267 | }) | ||
| 268 | } | ||
| 269 | } | ||
| 270 | } | ||
| 271 | </script> | ||
| 272 | <style scoped lang="scss"> | ||
| 273 | @import "~@/styles/mixin.scss"; | ||
| 274 | </style> | ||
| 275 | |||
| 276 |
| 1 | <!-- | ||
| 2 | * @Description: | ||
| 3 | * @Autor: renchao | ||
| 4 | * @LastEditTime: 2023-11-15 15:41:43 | ||
| 5 | --> | ||
| 6 | <template> | ||
| 7 | <div class="from-clues loadingtext" v-Loading="loading" element-loading-text="拼命加载中..."> | ||
| 8 | <!-- 表单部分 --> | ||
| 9 | <el-tabs v-model="activeName" @tab-click="handleClick" v-if="headTabBdcqz.length >1" style="margin-top:-15px"> | ||
| 10 | <el-tab-pane :label="item.qlr + (item.bdcqzh !== null ? '(' + item.bdcqzh + ')' : '')" :name="item.bsmBdcqz" | ||
| 11 | v-for="(item, index) in headTabBdcqz" :key="index"> | ||
| 12 | </el-tab-pane> | ||
| 13 | </el-tabs> | ||
| 14 | <el-empty description="暂无数据" v-if="headTabBdcqz.length == 0 && noData"></el-empty> | ||
| 15 | <div v-else> | ||
| 16 | <div style="height:540px"> | ||
| 17 | <el-form class="zs" :model="bdcqz" v-if="this.bdcqz.bdcqzlx==1" ref="ruleForm" label-width="100px"> | ||
| 18 | <el-row> | ||
| 19 | <el-col :span="24"> | ||
| 20 | <el-form-item label="权利人"> | ||
| 21 | <el-input v-model="bdcqz.qlr"></el-input> | ||
| 22 | </el-form-item> | ||
| 23 | </el-col> | ||
| 24 | </el-row> | ||
| 25 | <el-row> | ||
| 26 | <el-col :span="24"> | ||
| 27 | <el-form-item label="共有情况"> | ||
| 28 | <el-select v-model="bdcqz.gyqk" class="width100" placeholder="请选择"> | ||
| 29 | <el-option | ||
| 30 | v-for="item in gyqkList" | ||
| 31 | :key="item.dcode" | ||
| 32 | :label="item.dname" | ||
| 33 | :value="item.dcode"> | ||
| 34 | </el-option> | ||
| 35 | </el-select> | ||
| 36 | </el-form-item> | ||
| 37 | </el-col> | ||
| 38 | </el-row> | ||
| 39 | <el-row> | ||
| 40 | <el-col :span="24"> | ||
| 41 | <el-form-item label="坐落"> | ||
| 42 | <el-input v-model="bdcqz.zl"></el-input> | ||
| 43 | </el-form-item> | ||
| 44 | </el-col> | ||
| 45 | </el-row> | ||
| 46 | <el-row> | ||
| 47 | <el-col :span="24"> | ||
| 48 | <el-form-item label="不动产单元号"> | ||
| 49 | <el-input v-model="bdcqz.bdcdyh"></el-input> | ||
| 50 | </el-form-item> | ||
| 51 | </el-col> | ||
| 52 | </el-row> | ||
| 53 | <el-row> | ||
| 54 | <el-col :span="24"> | ||
| 55 | <el-form-item label="权利类型"> | ||
| 56 | <el-input v-model="bdcqz.qllx"></el-input> | ||
| 57 | </el-form-item> | ||
| 58 | </el-col> | ||
| 59 | </el-row> | ||
| 60 | <el-row> | ||
| 61 | <el-col :span="24"> | ||
| 62 | <el-form-item label="权利性质 "> | ||
| 63 | <el-input v-model="bdcqz.qlxz"></el-input> | ||
| 64 | </el-form-item> | ||
| 65 | </el-col> | ||
| 66 | </el-row> | ||
| 67 | <el-row> | ||
| 68 | <el-col :span="24"> | ||
| 69 | <el-form-item label="用途"> | ||
| 70 | <el-input v-model="bdcqz.yt"></el-input> | ||
| 71 | </el-form-item> | ||
| 72 | </el-col> | ||
| 73 | </el-row> | ||
| 74 | <el-row> | ||
| 75 | <el-col :span="24"> | ||
| 76 | <el-form-item label="面积"> | ||
| 77 | <el-input v-model="bdcqz.mj"></el-input> | ||
| 78 | </el-form-item> | ||
| 79 | </el-col> | ||
| 80 | </el-row> | ||
| 81 | <el-row> | ||
| 82 | <el-col :span="24"> | ||
| 83 | <el-form-item label="使用期限 "> | ||
| 84 | <el-input v-model="bdcqz.syqx"></el-input> | ||
| 85 | </el-form-item> | ||
| 86 | </el-col> | ||
| 87 | </el-row> | ||
| 88 | <el-row> | ||
| 89 | <el-col :span="24"> | ||
| 90 | <el-form-item label="权利其他状况"> | ||
| 91 | <el-input v-model="bdcqz.qlqtzk" :rows="4" type="textarea"></el-input> | ||
| 92 | </el-form-item> | ||
| 93 | </el-col> | ||
| 94 | </el-row> | ||
| 95 | <el-row> | ||
| 96 | <el-col :span="24"> | ||
| 97 | <el-form-item label="附记"> | ||
| 98 | <el-input v-model="bdcqz.fj" :rows="4" type="textarea"></el-input> | ||
| 99 | </el-form-item> | ||
| 100 | </el-col> | ||
| 101 | </el-row> | ||
| 102 | </el-form> | ||
| 103 | <el-form :model="bdcqz" class="zm" v-else ref="ruleForm" label-width="110px"> | ||
| 104 | <el-row> | ||
| 105 | <el-col :span="24"> | ||
| 106 | <el-form-item label="证明权利或事项"> | ||
| 107 | <el-input v-model="bdcqz.zmqlhsx"></el-input> | ||
| 108 | </el-form-item> | ||
| 109 | </el-col> | ||
| 110 | </el-row> | ||
| 111 | <el-row> | ||
| 112 | <el-col :span="24"> | ||
| 113 | <el-form-item label="权利人(申请人)"> | ||
| 114 | <el-input v-model="bdcqz.qlr"></el-input> | ||
| 115 | </el-form-item> | ||
| 116 | </el-col> | ||
| 117 | </el-row> | ||
| 118 | <el-row> | ||
| 119 | <el-col :span="24"> | ||
| 120 | <el-form-item label="义务人"> | ||
| 121 | <el-input v-model="bdcqz.ywr"></el-input> | ||
| 122 | </el-form-item> | ||
| 123 | </el-col> | ||
| 124 | </el-row> | ||
| 125 | <el-row> | ||
| 126 | <el-col :span="24"> | ||
| 127 | <el-form-item label="坐落"> | ||
| 128 | <el-input v-model="bdcqz.zl"></el-input> | ||
| 129 | </el-form-item> | ||
| 130 | </el-col> | ||
| 131 | </el-row> | ||
| 132 | <el-row> | ||
| 133 | <el-col :span="24"> | ||
| 134 | <el-form-item label="不动产单元号"> | ||
| 135 | <el-input v-model="bdcqz.bdcdyh"></el-input> | ||
| 136 | </el-form-item> | ||
| 137 | </el-col> | ||
| 138 | </el-row> | ||
| 139 | <el-row> | ||
| 140 | <el-col :span="24"> | ||
| 141 | <el-form-item label="其他状况"> | ||
| 142 | <el-input v-model="bdcqz.qlqtzk" :rows="6" type="textarea"></el-input> | ||
| 143 | </el-form-item> | ||
| 144 | </el-col> | ||
| 145 | </el-row> | ||
| 146 | <el-row> | ||
| 147 | <el-col :span="24"> | ||
| 148 | <el-form-item label="附记"> | ||
| 149 | <el-input v-model="bdcqz.fj" :rows="6" type="textarea"></el-input> | ||
| 150 | </el-form-item> | ||
| 151 | </el-col> | ||
| 152 | </el-row> | ||
| 153 | </el-form> | ||
| 154 | </div> | ||
| 155 | <div style="text-align:center"> | ||
| 156 | <el-button @click="$popupCacel">取消</el-button> | ||
| 157 | <el-button type="primary" @click="handleSubmit">保存</el-button> | ||
| 158 | </div> | ||
| 159 | </div> | ||
| 160 | </div> | ||
| 161 | </template> | ||
| 162 | |||
| 163 | <script> | ||
| 164 | import store from '@/store/index.js' | ||
| 165 | import { getSlsqBdcqzList, editBdcqz } from "@/api/bdcqz.js" | ||
| 166 | export default { | ||
| 167 | name: "zsxg", | ||
| 168 | props: { | ||
| 169 | formData: { | ||
| 170 | type: Object, | ||
| 171 | default: {} | ||
| 172 | } | ||
| 173 | }, | ||
| 174 | data () { | ||
| 175 | return { | ||
| 176 | gyqkList: store.getters.dictData['A34'], | ||
| 177 | key: 0, | ||
| 178 | noData: false, | ||
| 179 | loading: false, | ||
| 180 | bdcqz: {}, | ||
| 181 | //tab切换栏数组 | ||
| 182 | headTabBdcqz: [], | ||
| 183 | //tab选择绑定值 | ||
| 184 | activeName: '', | ||
| 185 | } | ||
| 186 | }, | ||
| 187 | mounted () { | ||
| 188 | this.getHeadTabBdcqz() | ||
| 189 | }, | ||
| 190 | methods: { | ||
| 191 | /** | ||
| 192 | * @description: 获取受理申请下全部不动产权证 | ||
| 193 | * @author: renchao | ||
| 194 | */ | ||
| 195 | getHeadTabBdcqz () { | ||
| 196 | this.loading = true | ||
| 197 | getSlsqBdcqzList({ bsmSlsq: this.formData.bsmSlsq }).then(res => { | ||
| 198 | if (res.code == 200) { | ||
| 199 | this.noData = true | ||
| 200 | if (res.result && res.result.length > 0) { | ||
| 201 | this.bdcqz = res.result[0] | ||
| 202 | this.headTabBdcqz = _.cloneDeep(res.result) | ||
| 203 | if (this.formData.bsmBdcqz) { | ||
| 204 | this.activeName = this.formData.bsmBdcqz | ||
| 205 | } else { | ||
| 206 | this.activeName = res.result[0].bsmBdcqz | ||
| 207 | } | ||
| 208 | } | ||
| 209 | } | ||
| 210 | this.loading = false | ||
| 211 | }) | ||
| 212 | }, | ||
| 213 | handleClick (tab) { | ||
| 214 | this.bdcqz = _.cloneDeep(this.headTabBdcqz[tab.index]) | ||
| 215 | }, | ||
| 216 | handleSubmit () { | ||
| 217 | editBdcqz(this.bdcqz).then(res => { | ||
| 218 | if (res.code == 200) { | ||
| 219 | this.$message.success('保存成功'); | ||
| 220 | //刷新列表 | ||
| 221 | this.$popupCacel() | ||
| 222 | } else { | ||
| 223 | this.$message.error(res.message) | ||
| 224 | } | ||
| 225 | }) | ||
| 226 | } | ||
| 227 | } | ||
| 228 | } | ||
| 229 | </script> | ||
| 230 | <style scoped lang="scss"> | ||
| 231 | @import "~@/styles/mixin.scss"; | ||
| 232 | </style> |
| 1 | <!-- | ||
| 2 | * @Description: | ||
| 3 | * @Autor: renchao | ||
| 4 | * @LastEditTime: 2024-02-06 13:23:44 | ||
| 5 | --> | ||
| 6 | <template> | ||
| 7 | <div class="from-clues loadingtext" v-Loading="loading" element-loading-text="拼命加载中..." style="text-align: center;"> | ||
| 8 | <!-- 表单部分 --> | ||
| 9 | <div style="margin-top:-20px"> | ||
| 10 | <el-tabs v-model="activeName" @tab-click="handleClick" v-if="headTabBdcqz.length >1"> | ||
| 11 | <el-tab-pane :label="item.qlr + (item.bdcqzh !== null ? '(' + item.bdcqzh + ')' : '')" :name="item.bsmBdcqz" | ||
| 12 | v-for="(item, index) in headTabBdcqz" :key="index"> | ||
| 13 | </el-tab-pane> | ||
| 14 | </el-tabs> | ||
| 15 | </div> | ||
| 16 | <el-empty description="暂无数据" v-if="headTabBdcqz.length == 0 && noData"></el-empty> | ||
| 17 | <div style="max-height:89vh;overflow-y:auto"> | ||
| 18 | <div v-show="this.bdcqz.bdcqzlx==1"> | ||
| 19 | <el-tabs v-model="activeTitle"> | ||
| 20 | <el-tab-pane label="第一页" name="title1"></el-tab-pane> | ||
| 21 | <el-tab-pane label="第二页" name="title2"></el-tab-pane> | ||
| 22 | </el-tabs> | ||
| 23 | <div style="width:1169px;overflow-x: hidden;"> | ||
| 24 | <canvas ref="zs1" width="1024" v-show="activeTitle=='title1'" height="739"></canvas> | ||
| 25 | <canvas ref="zs" width="1024" v-show="activeTitle=='title2'" height="739"></canvas> | ||
| 26 | </div> | ||
| 27 | </div> | ||
| 28 | <div style="width:1169px;overflow-x: hidden;" v-show="this.bdcqz.bdcqzlx==2"> | ||
| 29 | <canvas ref="zm" width="1169" height="828"></canvas> | ||
| 30 | </div> | ||
| 31 | </div> | ||
| 32 | </div> | ||
| 33 | </template> | ||
| 34 | |||
| 35 | <script> | ||
| 36 | import QRCode from 'qrcode' | ||
| 37 | import { datas } from "../../javascript/zsyl.js"; | ||
| 38 | import { getSlsqBdcqzList } from "@/api/bdcqz.js" | ||
| 39 | export default { | ||
| 40 | name: "zsyl", | ||
| 41 | props: { | ||
| 42 | formData: { | ||
| 43 | type: Object, | ||
| 44 | default: {} | ||
| 45 | } | ||
| 46 | }, | ||
| 47 | data () { | ||
| 48 | return { | ||
| 49 | activeTitle: 'title1', | ||
| 50 | key: 0, | ||
| 51 | noData: false, | ||
| 52 | imgSrc1: require('@/image/bdcqz/bdcqzs1.jpg'), | ||
| 53 | imgSrc: require('@/image/bdcqz/bdcqzs2.jpg'), | ||
| 54 | bdczmSrc: require('@/image/bdcqz/bdczm.jpg'), | ||
| 55 | loading: false, | ||
| 56 | //印刷序列号集合 | ||
| 57 | ysxlh: [], | ||
| 58 | //列名称对象 | ||
| 59 | columns: [], | ||
| 60 | //选择的不动产权证文件 | ||
| 61 | bdcqz: '', | ||
| 62 | //证书打开类型 是否需要展示打印按钮 | ||
| 63 | isToPrint: false, | ||
| 64 | //tab切换栏数组 | ||
| 65 | headTabBdcqz: [], | ||
| 66 | //tab选择绑定值 | ||
| 67 | activeName: '', | ||
| 68 | //证书图片预览 | ||
| 69 | previewImage: '', | ||
| 70 | ruleForm: { | ||
| 71 | bsmBdcqz: '', | ||
| 72 | szmc: '不动产权证书', | ||
| 73 | bsmBdcqz: '', | ||
| 74 | szzh: '', | ||
| 75 | ysxlh: '', | ||
| 76 | }, | ||
| 77 | } | ||
| 78 | }, | ||
| 79 | mounted () { | ||
| 80 | this.columns = datas.columns(); | ||
| 81 | if (this.formData.bdcqz) { | ||
| 82 | //从缮证进入 | ||
| 83 | this.bdcqz = this.formData.bdcqz | ||
| 84 | } else { | ||
| 85 | //从按钮进入 | ||
| 86 | this.getHeadTabBdcqz(); | ||
| 87 | } | ||
| 88 | }, | ||
| 89 | methods: { | ||
| 90 | /** | ||
| 91 | * @description: 获取证书内容 | ||
| 92 | * @param {*} code | ||
| 93 | * @author: renchao | ||
| 94 | */ | ||
| 95 | getRowValue (code) { | ||
| 96 | var value = this.bdcqz[code]; | ||
| 97 | return value; | ||
| 98 | }, | ||
| 99 | /** | ||
| 100 | * @description: 获取受理申请下全部不动产权证 | ||
| 101 | * @author: renchao | ||
| 102 | */ | ||
| 103 | getHeadTabBdcqz () { | ||
| 104 | this.loading = true | ||
| 105 | getSlsqBdcqzList({ bsmSlsq: this.formData.bsmSlsq }).then(res => { | ||
| 106 | if (res.code == 200) { | ||
| 107 | this.noData = true | ||
| 108 | if (res.result && res.result.length > 0) { | ||
| 109 | this.bdcqz = res.result[0] | ||
| 110 | this.headTabBdcqz = res.result | ||
| 111 | if (this.formData.bsmBdcqz) { | ||
| 112 | this.activeName = this.formData.bsmBdcqz | ||
| 113 | } else { | ||
| 114 | this.activeName = res.result[0].bsmBdcqz | ||
| 115 | } | ||
| 116 | if (this.bdcqz.bdcqzlx == 1) { | ||
| 117 | this.drawTextOnImage() | ||
| 118 | } else { | ||
| 119 | this.drawTextzmImage() | ||
| 120 | } | ||
| 121 | } | ||
| 122 | } | ||
| 123 | this.loading = false | ||
| 124 | }) | ||
| 125 | }, | ||
| 126 | /** | ||
| 127 | * @description: tab表头切换方法 | ||
| 128 | * @param {*} e | ||
| 129 | * @author: renchao | ||
| 130 | */ | ||
| 131 | handleClick (tab, event) { | ||
| 132 | this.bdcqz = this.headTabBdcqz[tab.index] | ||
| 133 | if (this.bdcqz.bdcqzlx == 1) { | ||
| 134 | this.drawTextOnImage() | ||
| 135 | } else { | ||
| 136 | this.drawTextzmImage() | ||
| 137 | } | ||
| 138 | }, | ||
| 139 | /** | ||
| 140 | * @description: 不动产证书 | ||
| 141 | * @author: renchao | ||
| 142 | */ | ||
| 143 | drawTextOnImage1 () { | ||
| 144 | const canvas = this.$refs.zs1; | ||
| 145 | const context = canvas.getContext('2d'); | ||
| 146 | const image = new Image(); | ||
| 147 | image.onload = () => { | ||
| 148 | context.drawImage(image, 0, 0); | ||
| 149 | context.font = '18px 楷体'; | ||
| 150 | context.fillStyle = '#000000'; | ||
| 151 | let date = this.bdcqz.djsj.split(' ')[0].split('/'); | ||
| 152 | let nian = date[0] | ||
| 153 | let yue = date[1] | ||
| 154 | let ri = date[2] | ||
| 155 | this.bdcqz.nian = nian | ||
| 156 | this.bdcqz.yue = yue | ||
| 157 | this.bdcqz.ri = ri | ||
| 158 | context.fillText(nian ? nian : '', 780, 499); | ||
| 159 | context.fillText(yue ? yue : '', 840, 499); | ||
| 160 | context.fillText(ri ? ri : '', 885, 499); | ||
| 161 | QRCode.toDataURL(this.bdcqz.bdcqzh, { margin: 0 }) | ||
| 162 | .then(url => { | ||
| 163 | const qrImage = new Image(); | ||
| 164 | this.bdcqz.qrImage = url; // 将二维码图片的 URL 存储到 bdcqz 对象的 qrImage 属性中 | ||
| 165 | qrImage.onload = () => { | ||
| 166 | context.drawImage(qrImage, 670, 400, 100, 100); | ||
| 167 | }; | ||
| 168 | qrImage.src = url; | ||
| 169 | }) | ||
| 170 | .catch(error => { | ||
| 171 | console.error(error); | ||
| 172 | }); | ||
| 173 | context.fillText(this.bdcqz.sxh ? this.bdcqz.sxh : '', 745, 633); | ||
| 174 | }; | ||
| 175 | image.src = this.imgSrc1; | ||
| 176 | }, | ||
| 177 | drawTextOnImage () { | ||
| 178 | this.drawTextOnImage1() | ||
| 179 | function getByteLen (val) { | ||
| 180 | var len = 0; | ||
| 181 | if (!val) return len; | ||
| 182 | for (var i = 0; i < val.length; i++) { | ||
| 183 | var length = val.charCodeAt(i); | ||
| 184 | if (length >= 0 && length <= 128) { | ||
| 185 | len += 1; | ||
| 186 | } else { | ||
| 187 | len += 2; | ||
| 188 | } | ||
| 189 | } | ||
| 190 | return len; | ||
| 191 | } | ||
| 192 | const canvas = this.$refs.zs; | ||
| 193 | const context = canvas.getContext('2d'); | ||
| 194 | const image = new Image(); | ||
| 195 | image.onload = () => { | ||
| 196 | context.drawImage(image, 0, 0); | ||
| 197 | context.font = '18px 楷体'; | ||
| 198 | context.fillStyle = '#000000'; | ||
| 199 | context.fillText(this.bdcqz.sjjc ? this.bdcqz.sjjc : '', 60, 56); | ||
| 200 | context.fillText(this.bdcqz.djnd ? this.bdcqz.djnd : '', 113, 56); | ||
| 201 | context.fillText(this.bdcqz.sxqc ? this.bdcqz.sxqc : '', 180, 56); | ||
| 202 | context.fillText(this.bdcqz.sxh ? this.bdcqz.sxh : '', 370, 56); | ||
| 203 | context.fillText(this.bdcqz.qlr ? this.bdcqz.qlr : '', 129, 97); | ||
| 204 | context.fillText(this.bdcqz.gyqk ? this.bdcqz.gyqk : '', 129, 136); | ||
| 205 | |||
| 206 | this.bdcdyh = this.bdcqz.bdcdyh.slice(0, 6) + ' ' + this.bdcqz.bdcdyh.slice(6, 12) + ' ' + | ||
| 207 | this.bdcqz.bdcdyh.slice(12, 19) + ' ' + this.bdcqz.bdcdyh.slice(19, this.bdcqz.bdcdyh.length) | ||
| 208 | context.fillText(this.bdcdyh ? this.bdcdyh : '', 129, 223); | ||
| 209 | |||
| 210 | context.fillText(this.bdcqz.qllx ? this.bdcqz.qllx : '', 129, 263); | ||
| 211 | context.fillText(this.bdcqz.qlxz ? this.bdcqz.qlxz : '', 129, 303); | ||
| 212 | context.fillText(this.bdcqz.yt ? this.bdcqz.yt : '', 129, 346); | ||
| 213 | // context.fillText(this.bdcqz.mj ? this.bdcqz.mj : '', 129, 386); | ||
| 214 | let lines6 = this.bdcqz.mj ? this.bdcqz.mj.split(' ') : []; | ||
| 215 | if (getByteLen(this.bdcqz.mj) > 37) { | ||
| 216 | lines6.forEach((line, index) => { | ||
| 217 | const y = 378 + (index * 27); // 每行文本的垂直位置 | ||
| 218 | let currentLine = ''; | ||
| 219 | let arr = []; | ||
| 220 | for (let word of line) { | ||
| 221 | const testLine = currentLine + word; | ||
| 222 | const lineWidth = context.measureText(testLine).width; | ||
| 223 | if (lineWidth <= 330) { | ||
| 224 | currentLine = testLine; | ||
| 225 | } else { | ||
| 226 | arr.push(currentLine); | ||
| 227 | currentLine = word; | ||
| 228 | } | ||
| 229 | } | ||
| 230 | arr.push(currentLine); | ||
| 231 | arr.forEach((line, index) => { | ||
| 232 | context.fillText(line, 129, y + (index * 20)); // 调整行高 | ||
| 233 | }) | ||
| 234 | }) | ||
| 235 | } else { | ||
| 236 | lines6.forEach((line, index) => { | ||
| 237 | const y = 386 + (index * 27); // 每行文本的垂直位置 | ||
| 238 | let currentLine = ''; | ||
| 239 | let arr = []; | ||
| 240 | for (let word of line) { | ||
| 241 | const testLine = currentLine + word; | ||
| 242 | const lineWidth = context.measureText(testLine).width; | ||
| 243 | if (lineWidth <= 330) { | ||
| 244 | currentLine = testLine; | ||
| 245 | } else { | ||
| 246 | arr.push(currentLine); | ||
| 247 | currentLine = word; | ||
| 248 | } | ||
| 249 | } | ||
| 250 | arr.push(currentLine); | ||
| 251 | arr.forEach((line, index) => { | ||
| 252 | context.fillText(line, 129, y + (index * 20)); // 调整行高 | ||
| 253 | }) | ||
| 254 | }) | ||
| 255 | } | ||
| 256 | // 权利其他状态 | ||
| 257 | let lines = this.bdcqz.qlqtzk ? this.bdcqz.qlqtzk.split('\n').filter(i => i && i.trim()) : []; | ||
| 258 | for (let i = 0; i < lines.length; i++) { | ||
| 259 | let num = Math.ceil(getByteLen(lines[i]) / 38) | ||
| 260 | if (getByteLen(lines[i]) > 37) { | ||
| 261 | let currentLine = ''; | ||
| 262 | let arr = []; | ||
| 263 | for (let word of lines[i]) { | ||
| 264 | const testLine = currentLine + word; | ||
| 265 | const lineWidth = context.measureText(testLine).width; | ||
| 266 | if (lineWidth <= 323) { | ||
| 267 | currentLine = testLine; | ||
| 268 | } else { | ||
| 269 | arr.push(currentLine); | ||
| 270 | currentLine = word; | ||
| 271 | } | ||
| 272 | } | ||
| 273 | arr.push(currentLine); | ||
| 274 | if (i > 0) { | ||
| 275 | arr.forEach((line, index) => { | ||
| 276 | context.fillText(line, 129, 495 + (29 * (i - 1)) + 4 * num + (index * 14)); // 调整行高 | ||
| 277 | }) | ||
| 278 | } else { | ||
| 279 | arr.forEach((line, index) => { | ||
| 280 | context.fillText(line, 129, 493 + (26 * (i - 1)) + (index * 14)); // 调整行高 | ||
| 281 | }) | ||
| 282 | } | ||
| 283 | } else { | ||
| 284 | if (i > 0) { | ||
| 285 | context.fillText(lines[i] ? lines[i] : '', 129, 500 + 4 * num + (29 * (i - 1))); | ||
| 286 | } else { | ||
| 287 | context.fillText(lines[i] ? lines[i] : '', 129, 505 + (27 * (i - 1))); | ||
| 288 | } | ||
| 289 | } | ||
| 290 | } | ||
| 291 | |||
| 292 | let lines1 = this.bdcqz.fj ? this.bdcqz.fj.split('\n').filter(i => i && i.trim()) : []; | ||
| 293 | lines1.forEach((line, index) => { | ||
| 294 | const y = 100 + (index * 30); // 每行文本的垂直位置 | ||
| 295 | let currentLine = ''; | ||
| 296 | let arr = []; | ||
| 297 | for (let word of line) { | ||
| 298 | const testLine = currentLine + word; | ||
| 299 | const lineWidth = context.measureText(testLine).width; | ||
| 300 | if (lineWidth <= 395) { | ||
| 301 | currentLine = testLine; | ||
| 302 | } else { | ||
| 303 | arr.push(currentLine); | ||
| 304 | currentLine = word; | ||
| 305 | } | ||
| 306 | } | ||
| 307 | arr.push(currentLine); | ||
| 308 | arr.forEach((line, index) => { | ||
| 309 | context.fillText(line, 580, y + (index * 30)); // 调整行高 | ||
| 310 | }) | ||
| 311 | }) | ||
| 312 | let lines3 = this.bdcqz.syqx ? this.bdcqz.syqx.split(' ') : []; | ||
| 313 | if (getByteLen(this.bdcqz.syqx) > 37) { | ||
| 314 | lines3.forEach((line, index) => { | ||
| 315 | const y = 423 + (index * 27); // 每行文本的垂直位置 | ||
| 316 | let currentLine = ''; | ||
| 317 | let arr = []; | ||
| 318 | for (let word of line) { | ||
| 319 | const testLine = currentLine + word; | ||
| 320 | const lineWidth = context.measureText(testLine).width; | ||
| 321 | if (lineWidth <= 330) { | ||
| 322 | currentLine = testLine; | ||
| 323 | } else { | ||
| 324 | arr.push(currentLine); | ||
| 325 | currentLine = word; | ||
| 326 | } | ||
| 327 | } | ||
| 328 | arr.push(currentLine); | ||
| 329 | arr.forEach((line, index) => { | ||
| 330 | context.fillText(line, 129, y + (index * 20)); // 调整行高 | ||
| 331 | }) | ||
| 332 | }) | ||
| 333 | } else { | ||
| 334 | lines3.forEach((line, index) => { | ||
| 335 | const y = 430 + (index * 27); // 每行文本的垂直位置 | ||
| 336 | let currentLine = ''; | ||
| 337 | let arr = []; | ||
| 338 | for (let word of line) { | ||
| 339 | const testLine = currentLine + word; | ||
| 340 | const lineWidth = context.measureText(testLine).width; | ||
| 341 | if (lineWidth <= 315) { | ||
| 342 | currentLine = testLine; | ||
| 343 | } else { | ||
| 344 | arr.push(currentLine); | ||
| 345 | currentLine = word; | ||
| 346 | } | ||
| 347 | } | ||
| 348 | arr.push(currentLine); | ||
| 349 | arr.forEach((line, index) => { | ||
| 350 | context.fillText(line, 129, y + (index * 20)); // 调整行高 | ||
| 351 | }) | ||
| 352 | }) | ||
| 353 | } | ||
| 354 | |||
| 355 | let lines2 = this.bdcqz.zl ? this.bdcqz.zl.split(' ') : []; | ||
| 356 | if (getByteLen(this.bdcqz.zl) > 37) { | ||
| 357 | lines2.forEach((line, index) => { | ||
| 358 | const y = 170 + (index * 20); // 每行文本的垂直位置 | ||
| 359 | let currentLine = ''; | ||
| 360 | let arr = []; | ||
| 361 | for (let word of line) { | ||
| 362 | const testLine = currentLine + word; | ||
| 363 | const lineWidth = context.measureText(testLine).width; | ||
| 364 | if (lineWidth <= 336) { | ||
| 365 | currentLine = testLine; | ||
| 366 | } else { | ||
| 367 | arr.push(currentLine); | ||
| 368 | currentLine = word; | ||
| 369 | } | ||
| 370 | } | ||
| 371 | arr.push(currentLine); | ||
| 372 | arr.forEach((line, index) => { | ||
| 373 | context.fillText(line, 129, y + (index * 20)); // 调整行高 | ||
| 374 | }) | ||
| 375 | }) | ||
| 376 | } else { | ||
| 377 | lines2.forEach((line, index) => { | ||
| 378 | const y = 180 + (index * 20); // 每行文本的垂直位置 | ||
| 379 | let currentLine = ''; | ||
| 380 | let arr = []; | ||
| 381 | for (let word of line) { | ||
| 382 | const testLine = currentLine + word; | ||
| 383 | const lineWidth = context.measureText(testLine).width; | ||
| 384 | if (lineWidth <= 336) { | ||
| 385 | currentLine = testLine; | ||
| 386 | } else { | ||
| 387 | arr.push(currentLine); | ||
| 388 | currentLine = word; | ||
| 389 | } | ||
| 390 | } | ||
| 391 | arr.push(currentLine); | ||
| 392 | arr.forEach((line, index) => { | ||
| 393 | context.fillText(line, 129, y + (index * 20)); // 调整行高 | ||
| 394 | }) | ||
| 395 | }) | ||
| 396 | } | ||
| 397 | } | ||
| 398 | image.src = this.imgSrc | ||
| 399 | }, | ||
| 400 | /** | ||
| 401 | * @description: 不动产证明 | ||
| 402 | * @author: renchao | ||
| 403 | */ | ||
| 404 | drawTextzmImage () { | ||
| 405 | function getByteLen (val) { | ||
| 406 | var len = 0; | ||
| 407 | if (!val) return len; | ||
| 408 | for (var i = 0; i < val.length; i++) { | ||
| 409 | var length = val.charCodeAt(i); | ||
| 410 | if (length >= 0 && length <= 128) { | ||
| 411 | len += 1; | ||
| 412 | } else { | ||
| 413 | len += 2; | ||
| 414 | } | ||
| 415 | } | ||
| 416 | return len; | ||
| 417 | } | ||
| 418 | const canvas = this.$refs.zm; | ||
| 419 | const context = canvas.getContext('2d'); | ||
| 420 | const image = new Image(); | ||
| 421 | image.onload = () => { | ||
| 422 | context.drawImage(image, 0, 0); | ||
| 423 | context.font = '18px 楷体'; | ||
| 424 | context.fillStyle = '#000000'; | ||
| 425 | // ysxlh | ||
| 426 | context.fillText(this.bdcqz.ysxlh ? this.bdcqz.ysxlh : '', 280, 712); | ||
| 427 | // djsj | ||
| 428 | if (this.bdcqz.djsj) { | ||
| 429 | let djsjList = this.bdcqz.djsj.split(' ')[0].split('/') | ||
| 430 | context.fillText(djsjList[0] ? djsjList[0] : '', 327, 580); | ||
| 431 | context.fillText(djsjList[1] ? djsjList[1] : '', 393, 580); | ||
| 432 | context.fillText(djsjList[2] ? djsjList[2] : '', 443, 580); | ||
| 433 | } | ||
| 434 | context.fillText(this.bdcqz.sjjc ? this.bdcqz.sjjc : '', 620, 125); | ||
| 435 | context.fillText(this.bdcqz.djnd ? this.bdcqz.djnd : '', 665, 125); | ||
| 436 | if (getByteLen(this.bdcqz.sxqc) > 14) { | ||
| 437 | const originalFont = context.font; | ||
| 438 | // 设置新的字体大小 | ||
| 439 | context.font = '14px 楷体'; // 替换为你想要的字体和大小 | ||
| 440 | // 绘制 bdcdyh | ||
| 441 | context.fillText(this.bdcqz.sxqc ? this.bdcqz.sxqc : '', 725, 125); | ||
| 442 | // 恢复原始字体设置 | ||
| 443 | context.font = originalFont; | ||
| 444 | } else { | ||
| 445 | context.fillText(this.bdcqz.sxqc ? this.bdcqz.sxqc : '', 755, 125); | ||
| 446 | } | ||
| 447 | |||
| 448 | context.fillText(this.bdcqz.sxh ? this.bdcqz.sxh : '', 960, 123); | ||
| 449 | context.fillText(this.bdcqz.zmqlhsx ? this.bdcqz.zmqlhsx : '', 775, 180); | ||
| 450 | // context.fillText(this.bdcqz.qlr ? this.bdcqz.qlr : '', 775, 228); | ||
| 451 | // 权利人 | ||
| 452 | let qlrlines = this.bdcqz.qlr | ||
| 453 | if (getByteLen(this.bdcqz.qlr) > 32) { | ||
| 454 | let currentLine = ''; | ||
| 455 | let arr = []; | ||
| 456 | for (let word of qlrlines) { | ||
| 457 | const testLine = currentLine + word; | ||
| 458 | const lineWidth = context.measureText(testLine).width; | ||
| 459 | if (lineWidth <= 295) { | ||
| 460 | currentLine = testLine; | ||
| 461 | } else { | ||
| 462 | arr.push(currentLine); | ||
| 463 | currentLine = word; | ||
| 464 | } | ||
| 465 | } | ||
| 466 | arr.push(currentLine); // 将最后一行添加到数组 | ||
| 467 | // 绘制所有行 | ||
| 468 | for (let i = 0; i < arr.length; i++) { | ||
| 469 | context.fillText(arr[i], 775, 218 + i * 20); // lineHeight 为行高 | ||
| 470 | } | ||
| 471 | } else { | ||
| 472 | context.fillText(this.bdcqz.qlr ? this.bdcqz.qlr : '', 775, 228); | ||
| 473 | } | ||
| 474 | |||
| 475 | // 义务人 | ||
| 476 | // context.fillText(this.bdcqz.ywr ? this.bdcqz.ywr : '', 775, 275); | ||
| 477 | let ywrlines = this.bdcqz.ywr | ||
| 478 | if (getByteLen(this.bdcqz.ywr) > 32) { | ||
| 479 | let currentLine = ''; | ||
| 480 | let arr = []; | ||
| 481 | for (let word of ywrlines) { | ||
| 482 | const testLine = currentLine + word; | ||
| 483 | const lineWidth = context.measureText(testLine).width; | ||
| 484 | if (lineWidth <= 295) { | ||
| 485 | currentLine = testLine; | ||
| 486 | } else { | ||
| 487 | arr.push(currentLine); | ||
| 488 | currentLine = word; | ||
| 489 | } | ||
| 490 | } | ||
| 491 | arr.push(currentLine); // 将最后一行添加到数组 | ||
| 492 | // 绘制所有行 | ||
| 493 | for (let i = 0; i < arr.length; i++) { | ||
| 494 | context.fillText(arr[i], 775, 268 + i * 20); // lineHeight 为行高 | ||
| 495 | } | ||
| 496 | } else { | ||
| 497 | context.fillText(this.bdcqz.ywr ? this.bdcqz.ywr : '', 775, 275); | ||
| 498 | } | ||
| 499 | |||
| 500 | // context.fillText(this.bdcqz.zl ? this.bdcqz.zl : '', 775, 325); | ||
| 501 | let lines2 = this.bdcqz.zl ? this.bdcqz.zl.split(' ') : []; | ||
| 502 | if (getByteLen(this.bdcqz.zl) > 32) { | ||
| 503 | lines2.forEach((line, index) => { | ||
| 504 | const y = 315 + (index * 20); // 每行文本的垂直位置 | ||
| 505 | let currentLine = ''; | ||
| 506 | let arr = []; | ||
| 507 | for (let word of line) { | ||
| 508 | const testLine = currentLine + word; | ||
| 509 | const lineWidth = context.measureText(testLine).width; | ||
| 510 | if (lineWidth <= 295) { | ||
| 511 | currentLine = testLine; | ||
| 512 | } else { | ||
| 513 | arr.push(currentLine); | ||
| 514 | currentLine = word; | ||
| 515 | } | ||
| 516 | } | ||
| 517 | arr.push(currentLine); | ||
| 518 | arr.forEach((line, index) => { | ||
| 519 | context.fillText(line, 775, y + (index * 20)); // 调整行高 | ||
| 520 | }) | ||
| 521 | }) | ||
| 522 | } else { | ||
| 523 | lines2.forEach((line, index) => { | ||
| 524 | const y = 325 + (index * 20); // 每行文本的垂直位置 | ||
| 525 | let currentLine = ''; | ||
| 526 | let arr = []; | ||
| 527 | for (let word of line) { | ||
| 528 | const testLine = currentLine + word; | ||
| 529 | const lineWidth = context.measureText(testLine).width; | ||
| 530 | if (lineWidth <= 295) { | ||
| 531 | currentLine = testLine; | ||
| 532 | } else { | ||
| 533 | arr.push(currentLine); | ||
| 534 | currentLine = word; | ||
| 535 | } | ||
| 536 | } | ||
| 537 | arr.push(currentLine); | ||
| 538 | arr.forEach((line, index) => { | ||
| 539 | context.fillText(line, 775, y + (index * 20)); // 调整行高 | ||
| 540 | }) | ||
| 541 | }) | ||
| 542 | } | ||
| 543 | |||
| 544 | // bdcdyh | ||
| 545 | this.bdcdyh = this.bdcqz.bdcdyh.slice(0, 6) + ' ' + this.bdcqz.bdcdyh.slice(6, 12) + ' ' + | ||
| 546 | this.bdcqz.bdcdyh.slice(12, 19) + ' ' + this.bdcqz.bdcdyh.slice(19, this.bdcqz.bdcdyh.length) | ||
| 547 | // context.fillText(this.bdcdyh ? this.bdcdyh : '', 775, 373); | ||
| 548 | // 保存当前字体设置 | ||
| 549 | const originalFont = context.font; | ||
| 550 | // 设置新的字体大小 | ||
| 551 | context.font = '16px 楷体'; // 替换为你想要的字体和大小 | ||
| 552 | // 绘制 bdcdyh | ||
| 553 | context.fillText(this.bdcdyh ? this.bdcdyh : '', 775, 373); | ||
| 554 | // 恢复原始字体设置 | ||
| 555 | context.font = originalFont; | ||
| 556 | // qlqtzk | ||
| 557 | function getByteLenBdcdy (val) { | ||
| 558 | var encoder = new TextEncoder('utf-8'); | ||
| 559 | return encoder.encode(val).length; | ||
| 560 | } | ||
| 561 | const maxWidth = 295; // 最大宽度限制 | ||
| 562 | let lines = this.bdcqz.qlqtzk ? this.bdcqz.qlqtzk.split('\n').filter(i => i && i.trim()) : []; | ||
| 563 | let bdcdyNum = Math.ceil(getByteLenBdcdy(lines[0]) / 43) | ||
| 564 | // 单独处理不动产单元号 | ||
| 565 | let linesBdcdy = lines[0] ? lines[0].split(' ') : []; | ||
| 566 | if (getByteLenBdcdy(lines[0]) > 43) { | ||
| 567 | linesBdcdy.forEach((line, index) => { | ||
| 568 | const y = 412 + (index * 17); // 每行文本的垂直位置 | ||
| 569 | let currentLine = ''; | ||
| 570 | let arr = []; | ||
| 571 | for (let word of line) { | ||
| 572 | const testLine = currentLine + word; | ||
| 573 | const lineWidth = context.measureText(testLine).width; | ||
| 574 | if (lineWidth <= maxWidth) { | ||
| 575 | currentLine = testLine; | ||
| 576 | } else { | ||
| 577 | arr.push(currentLine); | ||
| 578 | currentLine = word; | ||
| 579 | } | ||
| 580 | } | ||
| 581 | arr.push(currentLine); | ||
| 582 | arr.forEach((line, index) => { | ||
| 583 | context.fillText(line, 770, y + (index * 17)); // 调整行高 | ||
| 584 | }) | ||
| 585 | }) | ||
| 586 | } else { | ||
| 587 | linesBdcdy.forEach((line, index) => { | ||
| 588 | const y = 418 + (index * 17); // 每行文本的垂直位置 | ||
| 589 | let currentLine = ''; | ||
| 590 | let arr = []; | ||
| 591 | for (let word of line) { | ||
| 592 | const testLine = currentLine + word; | ||
| 593 | const lineWidth = context.measureText(testLine).width; | ||
| 594 | if (lineWidth <= maxWidth) { | ||
| 595 | currentLine = testLine; | ||
| 596 | } else { | ||
| 597 | arr.push(currentLine); | ||
| 598 | currentLine = word; | ||
| 599 | } | ||
| 600 | } | ||
| 601 | arr.push(currentLine); | ||
| 602 | arr.forEach((line, index) => { | ||
| 603 | context.fillText(line, 770, y + (index * 17)); // 调整行高 | ||
| 604 | }) | ||
| 605 | }) | ||
| 606 | } | ||
| 607 | |||
| 608 | for (let i = 1; i < lines.length; i++) { | ||
| 609 | let num = Math.ceil(getByteLen(lines[i]) / 32) | ||
| 610 | if (getByteLen(lines[i]) > 32) { | ||
| 611 | let currentLine = ''; | ||
| 612 | let arr = []; | ||
| 613 | for (let word of lines[i]) { | ||
| 614 | const testLine = currentLine + word; | ||
| 615 | const lineWidth = context.measureText(testLine).width; | ||
| 616 | if (lineWidth <= maxWidth) { | ||
| 617 | currentLine = testLine; | ||
| 618 | } else { | ||
| 619 | arr.push(currentLine); | ||
| 620 | currentLine = word; | ||
| 621 | } | ||
| 622 | } | ||
| 623 | arr.push(currentLine); | ||
| 624 | if (i > 0) { | ||
| 625 | arr.forEach((line, index) => { | ||
| 626 | context.fillText(line, 770, 408 + (bdcdyNum * 15) + (24 * (i - 1)) + 5 * num + (index * 17)); // 调整行高 | ||
| 627 | }) | ||
| 628 | } else { | ||
| 629 | arr.forEach((line, index) => { | ||
| 630 | context.fillText(line, 770, 408 + (bdcdyNum * 15) + (24 * (i - 1)) + (index * 17)); // 调整行高 | ||
| 631 | }) | ||
| 632 | } | ||
| 633 | } else { | ||
| 634 | if (i > 0) { | ||
| 635 | context.fillText(lines[i] ? lines[i] : '', 770, 417 + (bdcdyNum * 15) + 6 * num + (25 * (i - 1))); | ||
| 636 | } else { | ||
| 637 | context.fillText(lines[i] ? lines[i] : '', 770, 417 + (bdcdyNum * 15) + (25 * (i - 1))); | ||
| 638 | } | ||
| 639 | } | ||
| 640 | } | ||
| 641 | // fj | ||
| 642 | let lines1 = this.bdcqz.fj ? this.bdcqz.fj.split('\n').filter(i => i && i.trim()) : []; | ||
| 643 | for (let i = 0; i < lines1.length; i++) { | ||
| 644 | let num = Math.ceil(getByteLen(lines1[i]) / 37) | ||
| 645 | if (getByteLen(lines1[i]) > 37) { | ||
| 646 | let currentLine = ''; | ||
| 647 | let arr = []; | ||
| 648 | for (let word of lines1[i]) { | ||
| 649 | const testLine = currentLine + word; | ||
| 650 | const lineWidth = context.measureText(testLine).width; | ||
| 651 | if (lineWidth <= maxWidth) { | ||
| 652 | currentLine = testLine; | ||
| 653 | } else { | ||
| 654 | arr.push(currentLine); | ||
| 655 | currentLine = word; | ||
| 656 | } | ||
| 657 | } | ||
| 658 | arr.push(currentLine); | ||
| 659 | if (i > 0) { | ||
| 660 | arr.forEach((line, index) => { | ||
| 661 | context.fillText(line, 770, 605 + (24 * (i - 1)) + 5 * num + (index * 17)); // 调整行高 | ||
| 662 | }) | ||
| 663 | } else { | ||
| 664 | arr.forEach((line, index) => { | ||
| 665 | context.fillText(line, 770, 605 + (24 * (i - 1)) + (index * 17)); // 调整行高 | ||
| 666 | }) | ||
| 667 | } | ||
| 668 | } else { | ||
| 669 | if (i > 0) { | ||
| 670 | context.fillText(lines1[i] ? lines1[i] : '', 770, 616 + 6 * num + (25 * (i - 1))); | ||
| 671 | } else { | ||
| 672 | context.fillText(lines1[i] ? lines1[i] : '', 770, 616 + (25 * (i - 1))); | ||
| 673 | } | ||
| 674 | } | ||
| 675 | } | ||
| 676 | } | ||
| 677 | |||
| 678 | image.src = this.bdczmSrc; | ||
| 679 | } | ||
| 680 | } | ||
| 681 | } | ||
| 682 | </script> | ||
| 683 | <style scoped lang="scss"> | ||
| 684 | @import "~@/styles/mixin.scss"; | ||
| 685 | /deep/.el-tabs__nav-wrap::after { | ||
| 686 | display: none; | ||
| 687 | } | ||
| 688 | /deep/.el-tabs__header { | ||
| 689 | margin: 0; | ||
| 690 | } | ||
| 691 | /deep/.el-form-item--small.el-form-item { | ||
| 692 | margin-bottom: 0; | ||
| 693 | } | ||
| 694 | /deep/.mask-content { | ||
| 695 | padding-top: 10px !important; | ||
| 696 | } | ||
| 697 | .imgClass { | ||
| 698 | display: inline-block; | ||
| 699 | height: auto; | ||
| 700 | max-width: 100%; | ||
| 701 | } | ||
| 702 | |||
| 703 | .middle_padding { | ||
| 704 | padding-bottom: 10px; | ||
| 705 | } | ||
| 706 | |||
| 707 | .zsyl-button { | ||
| 708 | text-align: center; | ||
| 709 | margin-top: 20px; | ||
| 710 | |||
| 711 | .operation_button { | ||
| 712 | width: 100px; | ||
| 713 | border: 1px solid rgb(0, 121, 254); | ||
| 714 | } | ||
| 715 | |||
| 716 | .dy-button { | ||
| 717 | color: white; | ||
| 718 | background-color: rgb(0, 121, 254); | ||
| 719 | } | ||
| 720 | } | ||
| 721 | |||
| 722 | .table-column { | ||
| 723 | border-spacing: 1px; | ||
| 724 | width: 100%; | ||
| 725 | |||
| 726 | tr td { | ||
| 727 | border: 1px solid #ccc; | ||
| 728 | text-align: center; | ||
| 729 | height: 40px; | ||
| 730 | padding: 4px; | ||
| 731 | font-size: 13px; | ||
| 732 | background: rgb(251, 249, 229); | ||
| 733 | } | ||
| 734 | } | ||
| 735 | |||
| 736 | .zsyl-title { | ||
| 737 | background: #fafbe5; | ||
| 738 | text-align: center; | ||
| 739 | padding: 5px 0px; | ||
| 740 | font-size: 20px; | ||
| 741 | } | ||
| 742 | |||
| 743 | .no-data { | ||
| 744 | font-size: 18px; | ||
| 745 | display: flex; | ||
| 746 | text-align: center; | ||
| 747 | justify-content: center; | ||
| 748 | } | ||
| 749 | </style> |
| 1 | <!-- | ||
| 2 | * @Description: | ||
| 3 | * @Autor: miaofang | ||
| 4 | * @LastEditTime: 2023-10-23 16:16:24 | ||
| 5 | --> | ||
| 6 | <template> | ||
| 7 | <div | ||
| 8 | class="from-clues loadingtext" | ||
| 9 | v-Loading="loading" | ||
| 10 | element-loading-text="拼命加载中..." | ||
| 11 | style="height: 720px; text-align: center"> | ||
| 12 | <!-- 表单部分 --> | ||
| 13 | <el-tabs v-model="activeName" @tab-click="handleClick"> | ||
| 14 | <el-tab-pane label="证书预览" name="zsyl"> | ||
| 15 | <el-empty | ||
| 16 | description="暂无数据" | ||
| 17 | v-if="headTabBdcqz.length == 0 && noData"></el-empty> | ||
| 18 | <div class="zsys"> | ||
| 19 | <canvas | ||
| 20 | ref="zs" | ||
| 21 | width="1000" | ||
| 22 | v-show="this.bdcqz.bdcqzlx == 1" | ||
| 23 | height="700"></canvas> | ||
| 24 | <canvas | ||
| 25 | ref="zm" | ||
| 26 | width="1180" | ||
| 27 | v-show="this.bdcqz.bdcqzlx == 2" | ||
| 28 | height="780"></canvas> | ||
| 29 | </div> | ||
| 30 | </el-tab-pane> | ||
| 31 | <el-tab-pane label="证书详情" name="lcjl"> | ||
| 32 | <div class="slxx_title title-block"> | ||
| 33 | 证书详情信息 | ||
| 34 | <div class="triangle"></div> | ||
| 35 | </div> | ||
| 36 | <el-form :rules="rules" ref="ruleForm" label-width="120px"> | ||
| 37 | <el-row> | ||
| 38 | <el-col :span="8"> | ||
| 39 | <el-form-item label="权利人" prop="cyxm"> | ||
| 40 | <el-input disabled v-model="bdcqz.qlr" maxlegth="15"></el-input> | ||
| 41 | </el-form-item> | ||
| 42 | </el-col> | ||
| 43 | <el-col :span="8"> | ||
| 44 | <el-form-item label="义务人" prop="jtgxdm"> | ||
| 45 | <el-input disabled v-model="bdcqz.qlr" maxlegth="15"></el-input> | ||
| 46 | </el-form-item> | ||
| 47 | </el-col> | ||
| 48 | <el-col :span="8"> | ||
| 49 | <el-form-item label="坐落" prop="cbfdm"> | ||
| 50 | <el-input disabled v-model="bdcqz.zl" maxlegth="15"></el-input> | ||
| 51 | </el-form-item> | ||
| 52 | </el-col> | ||
| 53 | |||
| 54 | </el-row> | ||
| 55 | <el-row> | ||
| 56 | <el-col :span="8"> | ||
| 57 | <el-form-item label="不动产单元号" prop="cyxm"> | ||
| 58 | <el-input disabled v-model="bdcqz.bdcdyh" maxlegth="15"></el-input> | ||
| 59 | </el-form-item> | ||
| 60 | </el-col> | ||
| 61 | <el-col :span="8"> | ||
| 62 | <el-form-item label="印刷序列号" prop="jtgxdm"> | ||
| 63 | <el-input disabled v-model="bdcqz.ysxlh" maxlegth="15"></el-input> | ||
| 64 | </el-form-item> | ||
| 65 | </el-col> | ||
| 66 | <el-col :span="8"> | ||
| 67 | <el-form-item label="不动产权证号" prop="cbfdm"> | ||
| 68 | <el-input disabled v-model="bdcqz.bdcqzh" maxlegth="15"></el-input> | ||
| 69 | </el-form-item> | ||
| 70 | </el-col> | ||
| 71 | |||
| 72 | </el-row> | ||
| 73 | </el-form> | ||
| 74 | <div class="slxx_title title-block"> | ||
| 75 | 缮证记录信息 | ||
| 76 | <div class="triangle"></div> | ||
| 77 | </div> | ||
| 78 | <lb-table | ||
| 79 | class="sz" | ||
| 80 | :column="szxxtableData.columns" | ||
| 81 | heightNumSetting | ||
| 82 | :pagination="false" | ||
| 83 | :key="key" | ||
| 84 | :data="szxxtableData.data"> | ||
| 85 | </lb-table> | ||
| 86 | <div class="slxx_title title-block"> | ||
| 87 | 发证记录信息 | ||
| 88 | <div class="triangle"></div> | ||
| 89 | </div> | ||
| 90 | <lb-table | ||
| 91 | border | ||
| 92 | :column="tableDatas.columns" | ||
| 93 | :heightNum="100" | ||
| 94 | :data="tableDatas.data" | ||
| 95 | :pagination="false"> | ||
| 96 | </lb-table> | ||
| 97 | </el-tab-pane> | ||
| 98 | <el-tab-pane label="电子证照" name="third"> 等一个照片 </el-tab-pane> | ||
| 99 | </el-tabs> | ||
| 100 | </div> | ||
| 101 | </template> | ||
| 102 | |||
| 103 | <script> | ||
| 104 | // import { zsyldatas } from "../../javascript/zsyl.js"; | ||
| 105 | import { getSlsqBdcqzList } from "@/api/bdcqz.js"; | ||
| 106 | import { getCertificateList } from "@/api/bdcqz.js"; | ||
| 107 | import { getSzRecordList } from "@/api/bdcqz.js"; | ||
| 108 | import { szxxdatas } from "../../javascript/szxxdatapart"; | ||
| 109 | import { datas } from "../../javascript/fzxxdatapart"; | ||
| 110 | export default { | ||
| 111 | name: "zsyl", | ||
| 112 | props: { | ||
| 113 | formData: { | ||
| 114 | type: Object, | ||
| 115 | default: {}, | ||
| 116 | }, | ||
| 117 | }, | ||
| 118 | data () { | ||
| 119 | return { | ||
| 120 | key: 0, | ||
| 121 | noData: false, | ||
| 122 | imgSrc: require("@/image/bdcqz/bdcqzs2.jpg"), | ||
| 123 | bdczmSrc: require("@/image/bdcqz/bdczm.jpg"), | ||
| 124 | loading: false, | ||
| 125 | //印刷序列号集合 | ||
| 126 | ysxlh: [], | ||
| 127 | //列名称对象 | ||
| 128 | columns: [], | ||
| 129 | //选择的不动产权证文件 | ||
| 130 | bdcqz: "", | ||
| 131 | //证书打开类型 是否需要展示打印按钮 | ||
| 132 | isToPrint: false, | ||
| 133 | //tab切换栏数组 | ||
| 134 | tabslist: [], | ||
| 135 | headTabBdcqz: [], | ||
| 136 | //tab选择绑定值 | ||
| 137 | activeName: "zsyl", | ||
| 138 | //证书图片预览 | ||
| 139 | previewImage: "", | ||
| 140 | ruleForm: { | ||
| 141 | bsmBdcqz: "", | ||
| 142 | szmc: "不动产权证书", | ||
| 143 | bsmBdcqz: "", | ||
| 144 | szzh: "", | ||
| 145 | ysxlh: "", | ||
| 146 | }, | ||
| 147 | formdata: {}, | ||
| 148 | szxxtableData: { | ||
| 149 | total: 0, | ||
| 150 | columns: szxxdatas.columns(), | ||
| 151 | data: [], | ||
| 152 | }, | ||
| 153 | tableDatas: { | ||
| 154 | total: 0, | ||
| 155 | columns: datas.columns().fzgrid, | ||
| 156 | data: [], | ||
| 157 | }, | ||
| 158 | }; | ||
| 159 | }, | ||
| 160 | mounted () { | ||
| 161 | this.queryClick(); | ||
| 162 | this.query(); | ||
| 163 | if (this.formData.bdcqz) { | ||
| 164 | //从缮证进入 | ||
| 165 | this.bdcqz = this.formData.bdcqz; | ||
| 166 | } else { | ||
| 167 | //从按钮进入 | ||
| 168 | this.getHeadTabBdcqz(); | ||
| 169 | } | ||
| 170 | }, | ||
| 171 | methods: { | ||
| 172 | /** | ||
| 173 | * @description: queryClick | ||
| 174 | * @author: miaofang | ||
| 175 | */ | ||
| 176 | queryClick () { | ||
| 177 | this.formdata.bsmSlsq = this.formData.bsmSlsq; | ||
| 178 | getCertificateList(this.formdata).then((res) => { | ||
| 179 | if (res.code === 200) { | ||
| 180 | this.tableDatas.data = res.result ? res.result : []; | ||
| 181 | } | ||
| 182 | }) | ||
| 183 | }, | ||
| 184 | /** | ||
| 185 | * @description: query | ||
| 186 | * @author: miaofang | ||
| 187 | */ | ||
| 188 | query () { | ||
| 189 | getSzRecordList({ bsmBdcqz: this.formData.bsmBdcqz }).then((res) => { | ||
| 190 | if (res.code == 200) { | ||
| 191 | this.szxxtableData.data = res.result; | ||
| 192 | this.key++; | ||
| 193 | } | ||
| 194 | }) | ||
| 195 | }, | ||
| 196 | /** | ||
| 197 | * @description: 获取证书内容 | ||
| 198 | * @param {*} code | ||
| 199 | * @author: miaofang | ||
| 200 | */ | ||
| 201 | getRowValue (code) { | ||
| 202 | var value = this.bdcqz[code]; | ||
| 203 | return value; | ||
| 204 | }, | ||
| 205 | /** | ||
| 206 | * @description: 获取受理申请下全部不动产权证 | ||
| 207 | * @author: miaofang | ||
| 208 | */ | ||
| 209 | getHeadTabBdcqz () { | ||
| 210 | this.loading = true; | ||
| 211 | getSlsqBdcqzList({ bsmSlsq: this.formData.bsmSlsq }).then((res) => { | ||
| 212 | if (res.code == 200) { | ||
| 213 | this.noData = true; | ||
| 214 | if (res.result && res.result.length > 0) { | ||
| 215 | this.bdcqz = res.result[0]; | ||
| 216 | this.headTabBdcqz = res.result; | ||
| 217 | if (this.bdcqz.bdcqzlx == 1) { | ||
| 218 | this.drawTextOnImage(); | ||
| 219 | } else { | ||
| 220 | this.drawTextzmImage(); | ||
| 221 | } | ||
| 222 | } | ||
| 223 | } | ||
| 224 | this.loading = false; | ||
| 225 | }); | ||
| 226 | }, | ||
| 227 | /** | ||
| 228 | * @description: tab表头切换方法 | ||
| 229 | * @param {*} e | ||
| 230 | * @author: miaofang | ||
| 231 | */ | ||
| 232 | handleClick (tab, event) { | ||
| 233 | console.log(tab, event); | ||
| 234 | this.bdcqz = this.headTabBdcqz[0]; | ||
| 235 | if (this.bdcqz.bdcqzlx == 1) { | ||
| 236 | this.drawTextOnImage(); | ||
| 237 | } else { | ||
| 238 | this.drawTextzmImage(); | ||
| 239 | } | ||
| 240 | }, | ||
| 241 | /** | ||
| 242 | * @description: 不动产证书 | ||
| 243 | * @author: miaofang | ||
| 244 | */ | ||
| 245 | drawTextOnImage () { | ||
| 246 | function getByteLen (val) { | ||
| 247 | var len = 0; | ||
| 248 | if (!val) return len; | ||
| 249 | for (var i = 0; i < val.length; i++) { | ||
| 250 | var length = val.charCodeAt(i); | ||
| 251 | if (length >= 0 && length <= 128) { | ||
| 252 | len += 1; | ||
| 253 | } else { | ||
| 254 | len += 2; | ||
| 255 | } | ||
| 256 | } | ||
| 257 | return len; | ||
| 258 | } | ||
| 259 | const canvas = this.$refs.zs; | ||
| 260 | const context = canvas.getContext("2d"); | ||
| 261 | const image = new Image(); | ||
| 262 | image.onload = () => { | ||
| 263 | context.drawImage(image, 0, 0); | ||
| 264 | context.font = "18px 楷体"; | ||
| 265 | context.fillStyle = "#000000"; | ||
| 266 | context.fillText(this.bdcqz.sjjc ? this.bdcqz.sjjc : "", 60, 56); | ||
| 267 | context.fillText(this.bdcqz.djnd ? this.bdcqz.djnd : "", 113, 56); | ||
| 268 | context.fillText(this.bdcqz.sxqc ? this.bdcqz.sxqc : "", 180, 56); | ||
| 269 | context.fillText(this.bdcqz.sxh ? this.bdcqz.sxh : "", 370, 56); | ||
| 270 | context.fillText(this.bdcqz.qlr ? this.bdcqz.qlr : "", 129, 97); | ||
| 271 | context.fillText(this.bdcqz.gyqk ? this.bdcqz.gyqk : "", 129, 136); | ||
| 272 | |||
| 273 | this.bdcdyh = | ||
| 274 | this.bdcqz.bdcdyh.slice(0, 6) + | ||
| 275 | " " + | ||
| 276 | this.bdcqz.bdcdyh.slice(6, 12) + | ||
| 277 | " " + | ||
| 278 | this.bdcqz.bdcdyh.slice(12, 19) + | ||
| 279 | " " + | ||
| 280 | this.bdcqz.bdcdyh.slice(19, this.bdcqz.bdcdyh.length); | ||
| 281 | context.fillText(this.bdcdyh ? this.bdcdyh : "", 129, 223); | ||
| 282 | |||
| 283 | context.fillText(this.bdcqz.qllx ? this.bdcqz.qllx : "", 129, 263); | ||
| 284 | context.fillText(this.bdcqz.qlxz ? this.bdcqz.qlxz : "", 129, 303); | ||
| 285 | context.fillText(this.bdcqz.yt ? this.bdcqz.yt : "", 129, 346); | ||
| 286 | // context.fillText(this.bdcqz.mj ? this.bdcqz.mj : '', 129, 386); | ||
| 287 | let lines6 = this.bdcqz.mj ? this.bdcqz.mj.split(" ") : []; | ||
| 288 | if (getByteLen(this.bdcqz.mj) > 41) { | ||
| 289 | lines6.forEach((line, index) => { | ||
| 290 | const y = 378 + index * 27; // 每行文本的垂直位置 | ||
| 291 | let currentLine = ""; | ||
| 292 | let arr = []; | ||
| 293 | for (let word of line) { | ||
| 294 | const testLine = currentLine + word; | ||
| 295 | const lineWidth = context.measureText(testLine).width; | ||
| 296 | if (lineWidth <= 330) { | ||
| 297 | currentLine = testLine; | ||
| 298 | } else { | ||
| 299 | arr.push(currentLine); | ||
| 300 | currentLine = word; | ||
| 301 | } | ||
| 302 | } | ||
| 303 | arr.push(currentLine); | ||
| 304 | arr.forEach((line, index) => { | ||
| 305 | context.fillText(line, 129, y + index * 20); // 调整行高 | ||
| 306 | }); | ||
| 307 | }); | ||
| 308 | } else { | ||
| 309 | lines6.forEach((line, index) => { | ||
| 310 | const y = 386 + index * 27; // 每行文本的垂直位置 | ||
| 311 | let currentLine = ""; | ||
| 312 | let arr = []; | ||
| 313 | for (let word of line) { | ||
| 314 | const testLine = currentLine + word; | ||
| 315 | const lineWidth = context.measureText(testLine).width; | ||
| 316 | if (lineWidth <= 330) { | ||
| 317 | currentLine = testLine; | ||
| 318 | } else { | ||
| 319 | arr.push(currentLine); | ||
| 320 | currentLine = word; | ||
| 321 | } | ||
| 322 | } | ||
| 323 | arr.push(currentLine); | ||
| 324 | arr.forEach((line, index) => { | ||
| 325 | context.fillText(line, 129, y + index * 20); // 调整行高 | ||
| 326 | }); | ||
| 327 | }); | ||
| 328 | } | ||
| 329 | // 权利其他状态 | ||
| 330 | let lines = this.bdcqz.qlqtzk ? this.bdcqz.qlqtzk.split("\n") : []; | ||
| 331 | for (let i = 0; i < lines.length; i++) { | ||
| 332 | let num = Math.ceil(getByteLen(lines[i]) / 38); | ||
| 333 | if (getByteLen(lines[i]) > 38) { | ||
| 334 | let currentLine = ""; | ||
| 335 | let arr = []; | ||
| 336 | for (let word of lines[i]) { | ||
| 337 | const testLine = currentLine + word; | ||
| 338 | const lineWidth = context.measureText(testLine).width; | ||
| 339 | if (lineWidth <= 323) { | ||
| 340 | currentLine = testLine; | ||
| 341 | } else { | ||
| 342 | arr.push(currentLine); | ||
| 343 | currentLine = word; | ||
| 344 | } | ||
| 345 | } | ||
| 346 | arr.push(currentLine); | ||
| 347 | if (i > 0) { | ||
| 348 | arr.forEach((line, index) => { | ||
| 349 | context.fillText( | ||
| 350 | line, | ||
| 351 | 129, | ||
| 352 | 490 + 26 * (i - 1) + 4 * num + index * 14 | ||
| 353 | ); // 调整行高 | ||
| 354 | }); | ||
| 355 | } else { | ||
| 356 | arr.forEach((line, index) => { | ||
| 357 | context.fillText(line, 129, 500 + 26 * (i - 1) + index * 14); // 调整行高 | ||
| 358 | }); | ||
| 359 | } | ||
| 360 | } else { | ||
| 361 | if (i > 0) { | ||
| 362 | context.fillText( | ||
| 363 | lines[i] ? lines[i] : "", | ||
| 364 | 129, | ||
| 365 | 500 + 4 * num + 24 * (i - 1) | ||
| 366 | ); | ||
| 367 | } else { | ||
| 368 | context.fillText( | ||
| 369 | lines[i] ? lines[i] : "", | ||
| 370 | 129, | ||
| 371 | 505 + 24 * (i - 1) | ||
| 372 | ); | ||
| 373 | } | ||
| 374 | } | ||
| 375 | } | ||
| 376 | |||
| 377 | let lines1 = this.bdcqz.fj ? this.bdcqz.fj.split("\n") : []; | ||
| 378 | lines1.forEach((line, index) => { | ||
| 379 | const y = 100 + index * 30; // 每行文本的垂直位置 | ||
| 380 | let currentLine = ""; | ||
| 381 | let arr = []; | ||
| 382 | for (let word of line) { | ||
| 383 | const testLine = currentLine + word; | ||
| 384 | const lineWidth = context.measureText(testLine).width; | ||
| 385 | if (lineWidth <= 395) { | ||
| 386 | currentLine = testLine; | ||
| 387 | } else { | ||
| 388 | arr.push(currentLine); | ||
| 389 | currentLine = word; | ||
| 390 | } | ||
| 391 | } | ||
| 392 | arr.push(currentLine); | ||
| 393 | arr.forEach((line, index) => { | ||
| 394 | context.fillText(line, 580, y + index * 30); // 调整行高 | ||
| 395 | }); | ||
| 396 | }); | ||
| 397 | let lines3 = this.bdcqz.syqx ? this.bdcqz.syqx.split(" ") : []; | ||
| 398 | if (getByteLen(this.bdcqz.syqx) > 41) { | ||
| 399 | lines3.forEach((line, index) => { | ||
| 400 | const y = 423 + index * 27; // 每行文本的垂直位置 | ||
| 401 | let currentLine = ""; | ||
| 402 | let arr = []; | ||
| 403 | for (let word of line) { | ||
| 404 | const testLine = currentLine + word; | ||
| 405 | const lineWidth = context.measureText(testLine).width; | ||
| 406 | if (lineWidth <= 330) { | ||
| 407 | currentLine = testLine; | ||
| 408 | } else { | ||
| 409 | arr.push(currentLine); | ||
| 410 | currentLine = word; | ||
| 411 | } | ||
| 412 | } | ||
| 413 | arr.push(currentLine); | ||
| 414 | arr.forEach((line, index) => { | ||
| 415 | context.fillText(line, 129, y + index * 20); // 调整行高 | ||
| 416 | }); | ||
| 417 | }); | ||
| 418 | } else { | ||
| 419 | lines3.forEach((line, index) => { | ||
| 420 | const y = 430 + index * 27; // 每行文本的垂直位置 | ||
| 421 | let currentLine = ""; | ||
| 422 | let arr = []; | ||
| 423 | for (let word of line) { | ||
| 424 | const testLine = currentLine + word; | ||
| 425 | const lineWidth = context.measureText(testLine).width; | ||
| 426 | if (lineWidth <= 315) { | ||
| 427 | currentLine = testLine; | ||
| 428 | } else { | ||
| 429 | arr.push(currentLine); | ||
| 430 | currentLine = word; | ||
| 431 | } | ||
| 432 | } | ||
| 433 | arr.push(currentLine); | ||
| 434 | arr.forEach((line, index) => { | ||
| 435 | context.fillText(line, 129, y + index * 20); // 调整行高 | ||
| 436 | }); | ||
| 437 | }); | ||
| 438 | } | ||
| 439 | |||
| 440 | let lines2 = this.bdcqz.zl ? this.bdcqz.zl.split(" ") : []; | ||
| 441 | if (getByteLen(this.bdcqz.zl) > 41) { | ||
| 442 | lines2.forEach((line, index) => { | ||
| 443 | const y = 170 + index * 20; // 每行文本的垂直位置 | ||
| 444 | let currentLine = ""; | ||
| 445 | let arr = []; | ||
| 446 | for (let word of line) { | ||
| 447 | const testLine = currentLine + word; | ||
| 448 | const lineWidth = context.measureText(testLine).width; | ||
| 449 | if (lineWidth <= 336) { | ||
| 450 | currentLine = testLine; | ||
| 451 | } else { | ||
| 452 | arr.push(currentLine); | ||
| 453 | currentLine = word; | ||
| 454 | } | ||
| 455 | } | ||
| 456 | arr.push(currentLine); | ||
| 457 | arr.forEach((line, index) => { | ||
| 458 | context.fillText(line, 129, y + index * 20); // 调整行高 | ||
| 459 | }); | ||
| 460 | }); | ||
| 461 | } else { | ||
| 462 | lines2.forEach((line, index) => { | ||
| 463 | const y = 180 + index * 20; // 每行文本的垂直位置 | ||
| 464 | let currentLine = ""; | ||
| 465 | let arr = []; | ||
| 466 | for (let word of line) { | ||
| 467 | const testLine = currentLine + word; | ||
| 468 | const lineWidth = context.measureText(testLine).width; | ||
| 469 | if (lineWidth <= 336) { | ||
| 470 | currentLine = testLine; | ||
| 471 | } else { | ||
| 472 | arr.push(currentLine); | ||
| 473 | currentLine = word; | ||
| 474 | } | ||
| 475 | } | ||
| 476 | arr.push(currentLine); | ||
| 477 | arr.forEach((line, index) => { | ||
| 478 | context.fillText(line, 129, y + index * 20); // 调整行高 | ||
| 479 | }); | ||
| 480 | }); | ||
| 481 | } | ||
| 482 | }; | ||
| 483 | image.src = this.imgSrc; | ||
| 484 | }, | ||
| 485 | /** | ||
| 486 | * @description: 不动产证明 | ||
| 487 | * @author: miaofang | ||
| 488 | */ | ||
| 489 | drawTextzmImage () { | ||
| 490 | function getByteLen (val) { | ||
| 491 | var len = 0; | ||
| 492 | if (!val) return len; | ||
| 493 | for (var i = 0; i < val.length; i++) { | ||
| 494 | var length = val.charCodeAt(i); | ||
| 495 | if (length >= 0 && length <= 128) { | ||
| 496 | len += 1; | ||
| 497 | } else { | ||
| 498 | len += 2; | ||
| 499 | } | ||
| 500 | } | ||
| 501 | return len; | ||
| 502 | } | ||
| 503 | |||
| 504 | const canvas = this.$refs.zm; | ||
| 505 | const context = canvas.getContext("2d"); | ||
| 506 | const image = new Image(); | ||
| 507 | image.onload = () => { | ||
| 508 | context.drawImage(image, 0, 0); | ||
| 509 | context.font = "18px 楷体"; | ||
| 510 | context.fillStyle = "#000000"; | ||
| 511 | // ysxlh | ||
| 512 | context.fillText(this.bdcqz.ysxlh ? this.bdcqz.ysxlh : "", 280, 712); | ||
| 513 | // djsj | ||
| 514 | if (this.bdcqz.djsj) { | ||
| 515 | let djsjList = this.bdcqz.djsj.split(" ")[0].split("/"); | ||
| 516 | context.fillText(djsjList[0] ? djsjList[0] : "", 327, 580); | ||
| 517 | context.fillText(djsjList[1] ? djsjList[1] : "", 393, 580); | ||
| 518 | context.fillText(djsjList[2] ? djsjList[2] : "", 443, 580); | ||
| 519 | } | ||
| 520 | context.fillText(this.bdcqz.sjjc ? this.bdcqz.sjjc : "", 620, 125); | ||
| 521 | context.fillText(this.bdcqz.djnd ? this.bdcqz.djnd : "", 665, 125); | ||
| 522 | context.fillText(this.bdcqz.sxqc ? this.bdcqz.sxqc : "", 750, 125); | ||
| 523 | context.fillText(this.bdcqz.sxh ? this.bdcqz.sxh : "", 960, 123); | ||
| 524 | context.fillText( | ||
| 525 | this.bdcqz.zmqlhsx ? this.bdcqz.zmqlhsx : "", | ||
| 526 | 775, | ||
| 527 | 180 | ||
| 528 | ); | ||
| 529 | context.fillText(this.bdcqz.qlr ? this.bdcqz.qlr : "", 775, 228); | ||
| 530 | // 义务人 | ||
| 531 | context.fillText(this.bdcqz.ywr ? this.bdcqz.ywr : "", 775, 275); | ||
| 532 | // context.fillText(this.bdcqz.zl ? this.bdcqz.zl : '', 775, 325); | ||
| 533 | |||
| 534 | let lines2 = this.bdcqz.zl ? this.bdcqz.zl.split(" ") : []; | ||
| 535 | if (getByteLen(this.bdcqz.zl) > 41) { | ||
| 536 | lines2.forEach((line, index) => { | ||
| 537 | const y = 315 + index * 20; // 每行文本的垂直位置 | ||
| 538 | let currentLine = ""; | ||
| 539 | let arr = []; | ||
| 540 | for (let word of line) { | ||
| 541 | const testLine = currentLine + word; | ||
| 542 | const lineWidth = context.measureText(testLine).width; | ||
| 543 | if (lineWidth <= 295) { | ||
| 544 | currentLine = testLine; | ||
| 545 | } else { | ||
| 546 | arr.push(currentLine); | ||
| 547 | currentLine = word; | ||
| 548 | } | ||
| 549 | } | ||
| 550 | arr.push(currentLine); | ||
| 551 | arr.forEach((line, index) => { | ||
| 552 | context.fillText(line, 775, y + index * 20); // 调整行高 | ||
| 553 | }); | ||
| 554 | }); | ||
| 555 | } else { | ||
| 556 | lines2.forEach((line, index) => { | ||
| 557 | const y = 325 + index * 20; // 每行文本的垂直位置 | ||
| 558 | let currentLine = ""; | ||
| 559 | let arr = []; | ||
| 560 | for (let word of line) { | ||
| 561 | const testLine = currentLine + word; | ||
| 562 | const lineWidth = context.measureText(testLine).width; | ||
| 563 | if (lineWidth <= 295) { | ||
| 564 | currentLine = testLine; | ||
| 565 | } else { | ||
| 566 | arr.push(currentLine); | ||
| 567 | currentLine = word; | ||
| 568 | } | ||
| 569 | } | ||
| 570 | arr.push(currentLine); | ||
| 571 | arr.forEach((line, index) => { | ||
| 572 | context.fillText(line, 775, y + index * 20); // 调整行高 | ||
| 573 | }); | ||
| 574 | }); | ||
| 575 | } | ||
| 576 | |||
| 577 | // bdcdyh | ||
| 578 | this.bdcdyh = | ||
| 579 | this.bdcqz.bdcdyh.slice(0, 6) + | ||
| 580 | " " + | ||
| 581 | this.bdcqz.bdcdyh.slice(6, 12) + | ||
| 582 | " " + | ||
| 583 | this.bdcqz.bdcdyh.slice(12, 19) + | ||
| 584 | " " + | ||
| 585 | this.bdcqz.bdcdyh.slice(19, this.bdcqz.bdcdyh.length); | ||
| 586 | context.fillText(this.bdcdyh ? this.bdcdyh : "", 775, 373); | ||
| 587 | // qlqtzk | ||
| 588 | const maxWidth = 295; // 最大宽度限制 | ||
| 589 | let lines = this.bdcqz.qlqtzk ? this.bdcqz.qlqtzk.split("\n") : []; | ||
| 590 | for (let i = 0; i < lines.length; i++) { | ||
| 591 | let num = Math.ceil(getByteLen(lines[i]) / 37); | ||
| 592 | if (getByteLen(lines[i]) > 37) { | ||
| 593 | let currentLine = ""; | ||
| 594 | let arr = []; | ||
| 595 | for (let word of lines[i]) { | ||
| 596 | const testLine = currentLine + word; | ||
| 597 | const lineWidth = context.measureText(testLine).width; | ||
| 598 | if (lineWidth <= maxWidth) { | ||
| 599 | currentLine = testLine; | ||
| 600 | } else { | ||
| 601 | arr.push(currentLine); | ||
| 602 | currentLine = word; | ||
| 603 | } | ||
| 604 | } | ||
| 605 | arr.push(currentLine); | ||
| 606 | if (i > 0) { | ||
| 607 | arr.forEach((line, index) => { | ||
| 608 | context.fillText( | ||
| 609 | line, | ||
| 610 | 770, | ||
| 611 | 428 + 25 * (i - 1) + 5 * num + index * 15 | ||
| 612 | ); // 调整行高 | ||
| 613 | }); | ||
| 614 | } else { | ||
| 615 | arr.forEach((line, index) => { | ||
| 616 | context.fillText(line, 770, 435 + 25 * (i - 1) + index * 14); // 调整行高 | ||
| 617 | }); | ||
| 618 | } | ||
| 619 | } else { | ||
| 620 | if (i > 0) { | ||
| 621 | context.fillText( | ||
| 622 | lines[i] ? lines[i] : "", | ||
| 623 | 770, | ||
| 624 | 440 + 5 * num + 24 * (i - 1) | ||
| 625 | ); | ||
| 626 | } else { | ||
| 627 | context.fillText( | ||
| 628 | lines[i] ? lines[i] : "", | ||
| 629 | 770, | ||
| 630 | 440 + 24 * (i - 1) | ||
| 631 | ); | ||
| 632 | } | ||
| 633 | } | ||
| 634 | } | ||
| 635 | // fj | ||
| 636 | let lines1 = this.bdcqz.fj ? this.bdcqz.fj.split("\n") : []; | ||
| 637 | for (let i = 0; i < lines1.length; i++) { | ||
| 638 | let num = Math.ceil(getByteLen(lines1[i]) / 37); | ||
| 639 | if (getByteLen(lines1[i]) > 37) { | ||
| 640 | let currentLine = ""; | ||
| 641 | let arr = []; | ||
| 642 | for (let word of lines1[i]) { | ||
| 643 | const testLine = currentLine + word; | ||
| 644 | const lineWidth = context.measureText(testLine).width; | ||
| 645 | if (lineWidth <= maxWidth) { | ||
| 646 | currentLine = testLine; | ||
| 647 | } else { | ||
| 648 | arr.push(currentLine); | ||
| 649 | currentLine = word; | ||
| 650 | } | ||
| 651 | } | ||
| 652 | arr.push(currentLine); | ||
| 653 | if (i > 0) { | ||
| 654 | arr.forEach((line, index) => { | ||
| 655 | context.fillText( | ||
| 656 | line, | ||
| 657 | 770, | ||
| 658 | 610 + 25 * (i - 1) + 5 * num + index * 15 | ||
| 659 | ); // 调整行高 | ||
| 660 | }); | ||
| 661 | } else { | ||
| 662 | arr.forEach((line, index) => { | ||
| 663 | context.fillText(line, 770, 610 + 25 * (i - 1) + index * 15); // 调整行高 | ||
| 664 | }); | ||
| 665 | } | ||
| 666 | } else { | ||
| 667 | if (i > 0) { | ||
| 668 | context.fillText( | ||
| 669 | lines1[i] ? lines1[i] : "", | ||
| 670 | 770, | ||
| 671 | 610 + 5 * num + 23 * (i - 1) | ||
| 672 | ); | ||
| 673 | } else { | ||
| 674 | context.fillText( | ||
| 675 | lines1[i] ? lines1[i] : "", | ||
| 676 | 770, | ||
| 677 | 610 + 23 * (i - 1) | ||
| 678 | ); | ||
| 679 | } | ||
| 680 | } | ||
| 681 | } | ||
| 682 | }; | ||
| 683 | |||
| 684 | image.src = this.bdczmSrc; | ||
| 685 | }, | ||
| 686 | }, | ||
| 687 | computed: { | ||
| 688 | hdiffHeight () { | ||
| 689 | return 0; | ||
| 690 | // return this.headTabBdcqz.length > 1 ? 54 : 0 | ||
| 691 | }, | ||
| 692 | }, | ||
| 693 | }; | ||
| 694 | </script> | ||
| 695 | <style scoped lang="scss"> | ||
| 696 | @import "~@/styles/mixin.scss"; | ||
| 697 | |||
| 698 | .imgClass { | ||
| 699 | display: inline-block; | ||
| 700 | height: auto; | ||
| 701 | max-width: 100%; | ||
| 702 | } | ||
| 703 | |||
| 704 | .middle_padding { | ||
| 705 | padding-bottom: 10px; | ||
| 706 | } | ||
| 707 | |||
| 708 | .zsyl-button { | ||
| 709 | text-align: center; | ||
| 710 | margin-top: 20px; | ||
| 711 | |||
| 712 | .operation_button { | ||
| 713 | width: 100px; | ||
| 714 | border: 1px solid rgb(0, 121, 254); | ||
| 715 | } | ||
| 716 | |||
| 717 | .dy-button { | ||
| 718 | color: white; | ||
| 719 | background-color: rgb(0, 121, 254); | ||
| 720 | } | ||
| 721 | } | ||
| 722 | |||
| 723 | .table-column { | ||
| 724 | border-spacing: 1px; | ||
| 725 | width: 100%; | ||
| 726 | |||
| 727 | tr td { | ||
| 728 | border: 1px solid #ccc; | ||
| 729 | text-align: center; | ||
| 730 | height: 40px; | ||
| 731 | padding: 4px; | ||
| 732 | font-size: 13px; | ||
| 733 | background: rgb(251, 249, 229); | ||
| 734 | } | ||
| 735 | } | ||
| 736 | |||
| 737 | .zsyl-title { | ||
| 738 | background: #fafbe5; | ||
| 739 | text-align: center; | ||
| 740 | padding: 5px 0px; | ||
| 741 | font-size: 20px; | ||
| 742 | } | ||
| 743 | |||
| 744 | .no-data { | ||
| 745 | font-size: 18px; | ||
| 746 | display: flex; | ||
| 747 | text-align: center; | ||
| 748 | justify-content: center; | ||
| 749 | } | ||
| 750 | .el-tab-pane { | ||
| 751 | width: 1190px; | ||
| 752 | height: 670px; | ||
| 753 | overflow-y: auto; | ||
| 754 | } | ||
| 755 | .zsys { | ||
| 756 | width: 1180px; | ||
| 757 | height: 670px; | ||
| 758 | } | ||
| 759 | /deep/.el-table { | ||
| 760 | height: 100px !important; | ||
| 761 | } | ||
| 762 | // /deep/.sz { | ||
| 763 | // height: 340px !important; | ||
| 764 | // } | ||
| 765 | .el-form { | ||
| 766 | margin-top: 20px; | ||
| 767 | } | ||
| 768 | </style> |
| 1 | <!-- | ||
| 2 | * @Description: | ||
| 3 | * @Autor: renchao | ||
| 4 | * @LastEditTime: 2023-07-17 13:51:29 | ||
| 5 | --> | ||
| 6 | <template> | ||
| 7 | <lb-table :column="column" :maxHeight="200" :heightNumSetting="true" :pagination="false" :key="key" :data="tableData"> | ||
| 8 | </lb-table> | ||
| 9 | </template> | ||
| 10 | <script> | ||
| 11 | import addQlr from './dialog/addQlr.vue' | ||
| 12 | import { mapGetters } from 'vuex' | ||
| 13 | export default { | ||
| 14 | components: { | ||
| 15 | addQlr | ||
| 16 | }, | ||
| 17 | computed: { | ||
| 18 | ...mapGetters(["dictData"]), | ||
| 19 | }, | ||
| 20 | props: { | ||
| 21 | tableData: { | ||
| 22 | type: Array, | ||
| 23 | default: function () { | ||
| 24 | return [] | ||
| 25 | } | ||
| 26 | }, | ||
| 27 | gyfs: { | ||
| 28 | type: String, | ||
| 29 | default: '1' | ||
| 30 | } | ||
| 31 | }, | ||
| 32 | data () { | ||
| 33 | return { | ||
| 34 | key: 0, | ||
| 35 | dataIndex: 0, | ||
| 36 | dialog: false, | ||
| 37 | details: {}, | ||
| 38 | tableDataList: [], | ||
| 39 | qlrCommonTable: [ | ||
| 40 | { | ||
| 41 | label: '序号', | ||
| 42 | type: 'index', | ||
| 43 | width: '50', | ||
| 44 | render: (h, scope) => { | ||
| 45 | return ( | ||
| 46 | <div> | ||
| 47 | {scope.$index + 1} | ||
| 48 | </div> | ||
| 49 | ) | ||
| 50 | } | ||
| 51 | }, | ||
| 52 | { | ||
| 53 | prop: "qlrmc", | ||
| 54 | label: "抵押权人" | ||
| 55 | }, | ||
| 56 | { | ||
| 57 | prop: "ywrmc", | ||
| 58 | label: "抵押人" | ||
| 59 | }, | ||
| 60 | { | ||
| 61 | prop: "bdcqzh", | ||
| 62 | label: "不动产登记证明号" | ||
| 63 | }, | ||
| 64 | { | ||
| 65 | prop: "dyjelx", | ||
| 66 | label: "抵押金额类型" | ||
| 67 | }, | ||
| 68 | { | ||
| 69 | prop: "dyfsmc", | ||
| 70 | label: "抵押方式" | ||
| 71 | }, | ||
| 72 | { | ||
| 73 | prop: "qdjgmc", | ||
| 74 | label: "抵押金额" | ||
| 75 | }, | ||
| 76 | { | ||
| 77 | prop: "qlmjmc", | ||
| 78 | label: "抵押面积" | ||
| 79 | }, | ||
| 80 | { | ||
| 81 | prop: "zwlxqssj", | ||
| 82 | label: "债务履行开始时间" | ||
| 83 | }, | ||
| 84 | { | ||
| 85 | prop: "zwlxjssj", | ||
| 86 | label: "债务履行结束时间" | ||
| 87 | }, | ||
| 88 | { | ||
| 89 | prop: "bdcdyh", | ||
| 90 | label: "不动产单元号" | ||
| 91 | }, | ||
| 92 | { | ||
| 93 | prop: "zl", | ||
| 94 | label: "坐落" | ||
| 95 | }, | ||
| 96 | |||
| 97 | |||
| 98 | ], | ||
| 99 | column: this.qlrCommonTable | ||
| 100 | } | ||
| 101 | }, | ||
| 102 | watch: { | ||
| 103 | tableData: { | ||
| 104 | handler: function (val, oldVal) { | ||
| 105 | let that = this | ||
| 106 | if (val.length == 0 || !val) { | ||
| 107 | that.tableDataList = _.cloneDeep([{ | ||
| 108 | sqrmc: '', | ||
| 109 | dlrzjlx: '', | ||
| 110 | dlrzjh: '', | ||
| 111 | fr: '' | ||
| 112 | }]) | ||
| 113 | } else { | ||
| 114 | that.tableDataList = _.cloneDeep(val) | ||
| 115 | } | ||
| 116 | }, | ||
| 117 | immediate: true, | ||
| 118 | deep: true | ||
| 119 | }, | ||
| 120 | gyfs: { | ||
| 121 | handler (newVal, oldValue) { | ||
| 122 | let dataList = _.cloneDeep(this.qlrCommonTable) | ||
| 123 | if (newVal == '1') { | ||
| 124 | this.column = _.cloneDeep(dataList).slice(1, dataList.length) | ||
| 125 | } else if ((newVal == '2')) { | ||
| 126 | this.column = dataList | ||
| 127 | } else { | ||
| 128 | this.column = _.cloneDeep(dataList) | ||
| 129 | this.column.splice( | ||
| 130 | 2, 0, { | ||
| 131 | prop: "qlbl", | ||
| 132 | label: "份数" | ||
| 133 | }) | ||
| 134 | } | ||
| 135 | }, | ||
| 136 | immediate: true | ||
| 137 | } | ||
| 138 | }, | ||
| 139 | methods: { | ||
| 140 | } | ||
| 141 | } | ||
| 142 | </script> | ||
| 143 | <style scoped lang='scss'> | ||
| 144 | /deep/.el-table th { | ||
| 145 | height: 30px !important; | ||
| 146 | } | ||
| 147 | /deep/.el-table--small .el-table__cell { | ||
| 148 | padding: 5px; | ||
| 149 | } | ||
| 150 | </style> |
| 1 | <!-- | ||
| 2 | * @Description: 流程图 | ||
| 3 | * @Autor: renchao | ||
| 4 | * @LastEditTime: 2023-07-25 09:26:01 | ||
| 5 | --> | ||
| 6 | <template> | ||
| 7 | <div class='flowChart'> | ||
| 8 | <img :src="formData" alt=""> | ||
| 9 | </div> | ||
| 10 | </template> | ||
| 11 | <script> | ||
| 12 | export default { | ||
| 13 | props: { | ||
| 14 | formData: { | ||
| 15 | type: String, | ||
| 16 | default: '' | ||
| 17 | } | ||
| 18 | } | ||
| 19 | } | ||
| 20 | </script> | ||
| 21 | <style scoped lang="scss"> | ||
| 22 | @import "~@/styles/mixin.scss"; | ||
| 23 | |||
| 24 | .flowChart { | ||
| 25 | margin: 20px 0; | ||
| 26 | } | ||
| 27 | </style> | ||
| ... | \ No newline at end of file | ... | \ No newline at end of file |
| 1 | <!-- | ||
| 2 | * @Description: | ||
| 3 | * @Autor: renchao | ||
| 4 | * @LastEditTime: 2023-07-28 16:28:43 | ||
| 5 | --> | ||
| 6 | <template> | ||
| 7 | <div class="from-clues"> | ||
| 8 | <!-- 发证信息 --> | ||
| 9 | <div class="from-clues-header"> | ||
| 10 | <el-form :model="ruleForm"> | ||
| 11 | <el-row :gutter="20"> | ||
| 12 | <el-col :span="6"> | ||
| 13 | <el-form-item label="印刷序列号"> | ||
| 14 | <el-input v-model="ruleForm.ysxlh" clearable placeholder="请输入印刷序列号"></el-input> | ||
| 15 | </el-form-item> | ||
| 16 | </el-col> | ||
| 17 | <el-col :span="6"> | ||
| 18 | <el-form-item label="证书号"> | ||
| 19 | <el-input v-model="ruleForm.zsh" clearable placeholder="请输入证书号"></el-input> | ||
| 20 | </el-form-item> | ||
| 21 | </el-col> | ||
| 22 | <el-col :span="6"> | ||
| 23 | <el-form-item label="权利人"> | ||
| 24 | <el-input v-model="ruleForm.qlr" clearable placeholder="请输入权利人"></el-input> | ||
| 25 | </el-form-item> | ||
| 26 | </el-col> | ||
| 27 | <el-col :span="6" class="btnColRight" v-if="viewEdit"> | ||
| 28 | <el-form-item> | ||
| 29 | <el-button type="primary" icon="el-icon-search" @click="handleSearch">查询</el-button> | ||
| 30 | <el-button type="primary" icon="el-icon-search" @click="zslqClick">证书领取</el-button> | ||
| 31 | </el-form-item> | ||
| 32 | </el-col> | ||
| 33 | </el-row> | ||
| 34 | </el-form> | ||
| 35 | </div> | ||
| 36 | <div class="from-clues-content"> | ||
| 37 | <lb-table border :column="tableData.columns" :heightNum="210" :data="tableData.data" :pagination="false"> | ||
| 38 | </lb-table> | ||
| 39 | </div> | ||
| 40 | </div> | ||
| 41 | </template> | ||
| 42 | <script> | ||
| 43 | import { mapGetters } from 'vuex' | ||
| 44 | import store from '@/store/index.js' | ||
| 45 | import table from "@/utils/mixin/table"; | ||
| 46 | import { datas } from "../javascript/fzxxdata"; | ||
| 47 | import { getCertificateList } from "@/api/bdcqz.js"; | ||
| 48 | export default { | ||
| 49 | mixins: [table], | ||
| 50 | data () { | ||
| 51 | return { | ||
| 52 | //表单是否可操作 | ||
| 53 | viewEdit: false, | ||
| 54 | ruleForm: { | ||
| 55 | ysxlh: '', | ||
| 56 | zsh: '', | ||
| 57 | qlr: '', | ||
| 58 | bsmSldy: '' | ||
| 59 | }, | ||
| 60 | tableData: { | ||
| 61 | total: 0, | ||
| 62 | columns: datas.columns().fzgrid, | ||
| 63 | data: [] | ||
| 64 | }, | ||
| 65 | dialogVisible: false | ||
| 66 | } | ||
| 67 | }, | ||
| 68 | created () { | ||
| 69 | this.viewEdit = this.$parent.currentSelectTab.ableOperation | ||
| 70 | }, | ||
| 71 | computed: { | ||
| 72 | ...mapGetters(['workFresh']) | ||
| 73 | }, | ||
| 74 | watch: { | ||
| 75 | workFresh: { | ||
| 76 | handler (newVal, oldVal) { | ||
| 77 | if (newVal) this.queryClick() | ||
| 78 | } | ||
| 79 | } | ||
| 80 | }, | ||
| 81 | methods: { | ||
| 82 | /** | ||
| 83 | * @description: queryClick | ||
| 84 | * @author: renchao | ||
| 85 | */ | ||
| 86 | queryClick () { | ||
| 87 | this.ruleForm.bsmSlsq = this.$route.query.bsmSlsq; | ||
| 88 | getCertificateList(this.ruleForm).then(res => { | ||
| 89 | if (res.code === 200) { | ||
| 90 | this.tableData.data = res.result ? res.result : [] | ||
| 91 | } | ||
| 92 | }) | ||
| 93 | }, | ||
| 94 | /** | ||
| 95 | * @description: | ||
| 96 | * @author: renchao | ||
| 97 | */ | ||
| 98 | zslqClick () { | ||
| 99 | store.dispatch('user/reWorkFresh', false) | ||
| 100 | this.$popupDialog("不动产权证领取", "workflow/components/dialog/zslq", {}, '80%', true) | ||
| 101 | } | ||
| 102 | } | ||
| 103 | } | ||
| 104 | </script> | ||
| 105 | <style scoped lang='scss'> | ||
| 106 | @import "~@/styles/public.scss"; | ||
| 107 | </style> |
| 1 | <!-- | ||
| 2 | * @Description: | ||
| 3 | * @Autor: renchao | ||
| 4 | * @LastEditTime: 2023-05-17 10:41:15 | ||
| 5 | --> | ||
| 6 | <template> | ||
| 7 | <div> | ||
| 8 | <div class="process-viewer"> | ||
| 9 | <div | ||
| 10 | v-show="!isLoading" | ||
| 11 | ref="processCanvas" | ||
| 12 | class="process-canvas" | ||
| 13 | style="height: 280px" | ||
| 14 | /> | ||
| 15 | <!-- 自定义箭头样式,用于成功状态下流程连线箭头 --> | ||
| 16 | <defs ref="customSuccessDefs"> | ||
| 17 | <marker | ||
| 18 | id="sequenceflow-end-white-success" | ||
| 19 | view-box="0 0 20 20" | ||
| 20 | ref-x="11" | ||
| 21 | ref-y="10" | ||
| 22 | marker-width="10" | ||
| 23 | marker-height="10" | ||
| 24 | orient="auto" | ||
| 25 | > | ||
| 26 | <path | ||
| 27 | class="success-arrow" | ||
| 28 | d="M 1 5 L 11 10 L 1 15 Z" | ||
| 29 | style=" | ||
| 30 | stroke-width: 1px; | ||
| 31 | stroke-linecap: round; | ||
| 32 | stroke-dasharray: 10000, 1; | ||
| 33 | " | ||
| 34 | /> | ||
| 35 | </marker> | ||
| 36 | <marker | ||
| 37 | id="conditional-flow-marker-white-success" | ||
| 38 | view-box="0 0 20 20" | ||
| 39 | ref-x="-1" | ||
| 40 | ref-y="10" | ||
| 41 | marker-width="10" | ||
| 42 | marker-height="10" | ||
| 43 | orient="auto" | ||
| 44 | > | ||
| 45 | <path | ||
| 46 | class="success-conditional" | ||
| 47 | d="M 0 10 L 8 6 L 16 10 L 8 14 Z" | ||
| 48 | style=" | ||
| 49 | stroke-width: 1px; | ||
| 50 | stroke-linecap: round; | ||
| 51 | stroke-dasharray: 10000, 1; | ||
| 52 | " | ||
| 53 | /> | ||
| 54 | </marker> | ||
| 55 | </defs> | ||
| 56 | <!-- 自定义箭头样式,用于失败状态下流程连线箭头 --> | ||
| 57 | <defs ref="customFailDefs"> | ||
| 58 | <marker | ||
| 59 | id="sequenceflow-end-white-fail" | ||
| 60 | view-box="0 0 20 20" | ||
| 61 | ref-x="11" | ||
| 62 | ref-y="10" | ||
| 63 | marker-width="10" | ||
| 64 | marker-height="10" | ||
| 65 | orient="auto" | ||
| 66 | > | ||
| 67 | <path | ||
| 68 | class="fail-arrow" | ||
| 69 | d="M 1 5 L 11 10 L 1 15 Z" | ||
| 70 | style=" | ||
| 71 | stroke-width: 1px; | ||
| 72 | stroke-linecap: round; | ||
| 73 | stroke-dasharray: 10000, 1; | ||
| 74 | " | ||
| 75 | /> | ||
| 76 | </marker> | ||
| 77 | <marker | ||
| 78 | id="conditional-flow-marker-white-fail" | ||
| 79 | view-box="0 0 20 20" | ||
| 80 | ref-x="-1" | ||
| 81 | ref-y="10" | ||
| 82 | marker-width="10" | ||
| 83 | marker-height="10" | ||
| 84 | orient="auto" | ||
| 85 | > | ||
| 86 | <path | ||
| 87 | class="fail-conditional" | ||
| 88 | d="M 0 10 L 8 6 L 16 10 L 8 14 Z" | ||
| 89 | style=" | ||
| 90 | stroke-width: 1px; | ||
| 91 | stroke-linecap: round; | ||
| 92 | stroke-dasharray: 10000, 1; | ||
| 93 | " | ||
| 94 | /> | ||
| 95 | </marker> | ||
| 96 | </defs> | ||
| 97 | |||
| 98 | <div style="position: absolute; top: 0px; left: 0px; width: 100%"> | ||
| 99 | <el-row type="flex" justify="end"> | ||
| 100 | <el-button-group key="scale-control" size="medium"> | ||
| 101 | <el-button | ||
| 102 | size="medium" | ||
| 103 | type="default" | ||
| 104 | :plain="true" | ||
| 105 | :disabled="defaultZoom <= 0.3" | ||
| 106 | icon="el-icon-zoom-out" | ||
| 107 | @click="processZoomOut()" | ||
| 108 | /> | ||
| 109 | <el-button size="medium" type="default" style="width: 90px">{{ | ||
| 110 | Math.floor(this.defaultZoom * 10 * 10) + "%" | ||
| 111 | }}</el-button> | ||
| 112 | <el-button | ||
| 113 | size="medium" | ||
| 114 | type="default" | ||
| 115 | :plain="true" | ||
| 116 | :disabled="defaultZoom >= 3.9" | ||
| 117 | icon="el-icon-zoom-in" | ||
| 118 | @click="processZoomIn()" | ||
| 119 | /> | ||
| 120 | <el-button | ||
| 121 | size="medium" | ||
| 122 | type="default" | ||
| 123 | icon="el-icon-c-scale-to-original" | ||
| 124 | @click="processReZoom()" | ||
| 125 | /> | ||
| 126 | <slot /> | ||
| 127 | </el-button-group> | ||
| 128 | </el-row> | ||
| 129 | </div> | ||
| 130 | </div> | ||
| 131 | <!-- 已完成节点悬浮弹窗 --> | ||
| 132 | <div class="information-list"> | ||
| 133 | <el-select v-model="selectValue" @change="handleSelect"> | ||
| 134 | <el-option | ||
| 135 | v-for="item in selectOptions" | ||
| 136 | :key="item.value" | ||
| 137 | :label="item.label" | ||
| 138 | :value="item.value" | ||
| 139 | > | ||
| 140 | </el-option> | ||
| 141 | </el-select> | ||
| 142 | <div class="cutline"> | ||
| 143 | <p class="cutlines">图例</p> | ||
| 144 | <div v-for="item in cutlinelist" :key="item.value" class="concent" :style="{ backgroundColor: item.backgroundColor,borderColor:item.color }"> | ||
| 145 | {{item.value}} | ||
| 146 | </div> | ||
| 147 | </div> | ||
| 148 | <el-table | ||
| 149 | height="190" | ||
| 150 | :data="taskCommentList" | ||
| 151 | size="mini" | ||
| 152 | border | ||
| 153 | header-cell-class-name="table-header-gray" | ||
| 154 | > | ||
| 155 | <el-table-column | ||
| 156 | label="序号" | ||
| 157 | header-align="center" | ||
| 158 | align="center" | ||
| 159 | type="index" | ||
| 160 | width="55px" | ||
| 161 | /> | ||
| 162 | <el-table-column | ||
| 163 | label="转入时间" | ||
| 164 | prop="createTime" | ||
| 165 | :formatter="formatDate" | ||
| 166 | width="160" | ||
| 167 | align="center" | ||
| 168 | /> | ||
| 169 | <el-table-column | ||
| 170 | label="认领时间" | ||
| 171 | prop="claimTime" | ||
| 172 | :formatter="formatDate" | ||
| 173 | width="160" | ||
| 174 | align="center" | ||
| 175 | /> | ||
| 176 | <el-table-column | ||
| 177 | label="转出时间" | ||
| 178 | prop="endTime" | ||
| 179 | :formatter="formatDate" | ||
| 180 | width="160" | ||
| 181 | align="center" | ||
| 182 | /> | ||
| 183 | <el-table-column label="操作方式" prop="controls" align="center" /> | ||
| 184 | <el-table-column label="意见" prop="idea" align="center" /> | ||
| 185 | </el-table> | ||
| 186 | </div> | ||
| 187 | </div> | ||
| 188 | </template> | ||
| 189 | <script> | ||
| 190 | import "@/styles/package/theme/index.scss"; | ||
| 191 | import BpmnViewer from "bpmn-js/lib/Viewer"; | ||
| 192 | import MoveCanvasModule from "diagram-js/lib/navigation/movecanvas"; | ||
| 193 | export default { | ||
| 194 | props: { | ||
| 195 | formData: { | ||
| 196 | type: Object, | ||
| 197 | default: {}, | ||
| 198 | }, | ||
| 199 | }, | ||
| 200 | data() { | ||
| 201 | return { | ||
| 202 | dlgTitle: undefined, | ||
| 203 | defaultZoom: 1, | ||
| 204 | // 是否正在加载流程图 | ||
| 205 | isLoading: true, | ||
| 206 | bpmnViewer: undefined, | ||
| 207 | // 已完成流程元素 | ||
| 208 | processNodeInfo: undefined, | ||
| 209 | // 当前任务id | ||
| 210 | selectTaskId: undefined, | ||
| 211 | // 任务节点审批记录 | ||
| 212 | taskList: [], | ||
| 213 | taskCommentList: [], | ||
| 214 | // 已完成任务悬浮延迟Timer | ||
| 215 | hoverTimer: null, | ||
| 216 | // 下拉 | ||
| 217 | selectValue: "", | ||
| 218 | selectOptions: [], | ||
| 219 | cutlinelist:[ | ||
| 220 | { | ||
| 221 | value: "完成节点", | ||
| 222 | color: "#4eb819", | ||
| 223 | backgroundColor :"rgba(78, 184, 25,0.2)" | ||
| 224 | }, | ||
| 225 | { | ||
| 226 | value: "当前节点", | ||
| 227 | color: "#409EFF", | ||
| 228 | backgroundColor :"rgba(64, 158, 255,0.2)" | ||
| 229 | }, | ||
| 230 | { | ||
| 231 | value: "挂起节点", | ||
| 232 | color: "#E6A23C", | ||
| 233 | backgroundColor :"rgba(230, 162, 60,0.2)" | ||
| 234 | }, | ||
| 235 | { | ||
| 236 | value: "阻塞节点", | ||
| 237 | color: "#F56C6C", | ||
| 238 | backgroundColor :"rgb(245, 108, 108,0.2)" | ||
| 239 | }, | ||
| 240 | { | ||
| 241 | value: "未激活节点", | ||
| 242 | color: "#000000", | ||
| 243 | backgroundColor :"none", | ||
| 244 | } | ||
| 245 | ], | ||
| 246 | }; | ||
| 247 | }, | ||
| 248 | created() { | ||
| 249 | this.$nextTick(() => { | ||
| 250 | // 获取流程记录 | ||
| 251 | this.getCommentList(); | ||
| 252 | this.setProcessStatus(this.formData.finishedInfo); | ||
| 253 | this.importXML(this.formData.xml); | ||
| 254 | }); | ||
| 255 | }, | ||
| 256 | destroyed() { | ||
| 257 | this.clearViewer(); | ||
| 258 | }, | ||
| 259 | methods: { | ||
| 260 | /** | ||
| 261 | * @description: formatDate | ||
| 262 | * @param {*} row | ||
| 263 | * @param {*} column | ||
| 264 | * @author: renchao | ||
| 265 | */ | ||
| 266 | formatDate(row, column) { | ||
| 267 | let data = row[column.property]; | ||
| 268 | if (data == null) { | ||
| 269 | return null; | ||
| 270 | } | ||
| 271 | let dt = new Date(data); | ||
| 272 | return ( | ||
| 273 | dt.getFullYear() + | ||
| 274 | "-" + | ||
| 275 | (dt.getMonth() + 1) + | ||
| 276 | "-" + | ||
| 277 | dt.getDate() + | ||
| 278 | " " + | ||
| 279 | dt.getHours() + | ||
| 280 | ":" + | ||
| 281 | dt.getMinutes() + | ||
| 282 | ":" + | ||
| 283 | dt.getSeconds() | ||
| 284 | ); | ||
| 285 | }, | ||
| 286 | /** | ||
| 287 | * @description: processReZoom | ||
| 288 | * @author: renchao | ||
| 289 | */ | ||
| 290 | processReZoom() { | ||
| 291 | this.defaultZoom = 1; | ||
| 292 | this.bpmnViewer.get("canvas").zoom("fit-viewport", "auto"); | ||
| 293 | }, | ||
| 294 | /** | ||
| 295 | * @description: processZoomIn | ||
| 296 | * @param {*} zoomStep | ||
| 297 | * @author: renchao | ||
| 298 | */ | ||
| 299 | processZoomIn(zoomStep = 0.1) { | ||
| 300 | const newZoom = Math.floor(this.defaultZoom * 100 + zoomStep * 100) / 100; | ||
| 301 | if (newZoom > 4) { | ||
| 302 | throw new Error( | ||
| 303 | "[Process Designer Warn ]: The zoom ratio cannot be greater than 4" | ||
| 304 | ); | ||
| 305 | } | ||
| 306 | this.defaultZoom = newZoom; | ||
| 307 | this.bpmnViewer.get("canvas").zoom(this.defaultZoom); | ||
| 308 | }, | ||
| 309 | /** | ||
| 310 | * @description: processZoomOut | ||
| 311 | * @param {*} zoomStep | ||
| 312 | * @author: renchao | ||
| 313 | */ | ||
| 314 | processZoomOut(zoomStep = 0.1) { | ||
| 315 | const newZoom = Math.floor(this.defaultZoom * 100 - zoomStep * 100) / 100; | ||
| 316 | if (newZoom < 0.2) { | ||
| 317 | throw new Error( | ||
| 318 | "[Process Designer Warn ]: The zoom ratio cannot be scss than 0.2" | ||
| 319 | ); | ||
| 320 | } | ||
| 321 | this.defaultZoom = newZoom; | ||
| 322 | this.bpmnViewer.get("canvas").zoom(this.defaultZoom); | ||
| 323 | }, | ||
| 324 | /** | ||
| 325 | * @description: getOperationTagType | ||
| 326 | * @param {*} type | ||
| 327 | * @author: renchao | ||
| 328 | */ | ||
| 329 | getOperationTagType(type) { | ||
| 330 | return "success"; | ||
| 331 | }, | ||
| 332 | // 流程图预览清空 | ||
| 333 | /** | ||
| 334 | * @description: 流程图预览清空 | ||
| 335 | * @param {*} e | ||
| 336 | * @author: renchao | ||
| 337 | */ | ||
| 338 | clearViewer(a) { | ||
| 339 | if (this.$refs.processCanvas) { | ||
| 340 | this.$refs.processCanvas.innerHTML = ""; | ||
| 341 | } | ||
| 342 | if (this.bpmnViewer) { | ||
| 343 | this.bpmnViewer.destroy(); | ||
| 344 | } | ||
| 345 | this.bpmnViewer = null; | ||
| 346 | }, | ||
| 347 | // 添加自定义箭头 | ||
| 348 | /** | ||
| 349 | * @description: 添加自定义箭头 | ||
| 350 | * @author: renchao | ||
| 351 | */ | ||
| 352 | addCustomDefs() { | ||
| 353 | const canvas = this.bpmnViewer.get("canvas"); | ||
| 354 | const svg = canvas._svg; | ||
| 355 | const customSuccessDefs = this.$refs.customSuccessDefs; | ||
| 356 | const customFailDefs = this.$refs.customFailDefs; | ||
| 357 | svg.appendChild(customSuccessDefs); | ||
| 358 | svg.appendChild(customFailDefs); | ||
| 359 | }, | ||
| 360 | // 任务悬浮弹窗 | ||
| 361 | /** | ||
| 362 | * @description: 任务悬浮弹窗 | ||
| 363 | * @param {*} element | ||
| 364 | * @author: renchao | ||
| 365 | */ | ||
| 366 | onSelectElement(element) { | ||
| 367 | this.selectTaskId = undefined; | ||
| 368 | this.dlgTitle = undefined; | ||
| 369 | let allfinishedTaskSet = [ | ||
| 370 | ...this.processNodeInfo.finishedTaskSet, | ||
| 371 | ...this.processNodeInfo.unfinishedTaskSet, | ||
| 372 | ]; | ||
| 373 | if (this.processNodeInfo == null || allfinishedTaskSet == null) return; | ||
| 374 | if (element == null || allfinishedTaskSet.indexOf(element.id) === -1) { | ||
| 375 | return; | ||
| 376 | } | ||
| 377 | this.selectTaskId = element.id; | ||
| 378 | this.selectValue = element.id; | ||
| 379 | this.dlgTitle = element.businessObject | ||
| 380 | ? element.businessObject.name | ||
| 381 | : undefined; | ||
| 382 | // 计算当前悬浮任务审批记录,如果记录为空不显示弹窗 | ||
| 383 | this.taskCommentList = (this.taskList || []).filter((item) => { | ||
| 384 | return item.taskDefinitionKey === this.selectTaskId; | ||
| 385 | }); | ||
| 386 | if (this.taskCommentList.length == 0) { | ||
| 387 | this.taskCommentList = this.taskList; | ||
| 388 | } | ||
| 389 | }, | ||
| 390 | // 下拉列表切换 | ||
| 391 | /** | ||
| 392 | * @description: 下拉列表切换 | ||
| 393 | * @param {*} val | ||
| 394 | * @author: renchao | ||
| 395 | */ | ||
| 396 | handleSelect(val) { | ||
| 397 | this.taskCommentList = (this.taskList || []).filter((item) => { | ||
| 398 | return item.taskDefinitionKey === val; | ||
| 399 | }); | ||
| 400 | if (this.taskCommentList.length == 0) { | ||
| 401 | this.taskCommentList = this.taskList; | ||
| 402 | } | ||
| 403 | }, | ||
| 404 | // 显示流程图 | ||
| 405 | /** | ||
| 406 | * @description: 显示流程图 | ||
| 407 | * @param {*} xml | ||
| 408 | * @author: renchao | ||
| 409 | */ | ||
| 410 | async importXML(xml) { | ||
| 411 | let xmlData = this.$x2js.xml2js(xml).definitions.process; | ||
| 412 | this.selectOptions = xmlData.userTask.map((item) => { | ||
| 413 | return { value: item._id, label: item._name }; | ||
| 414 | }); | ||
| 415 | this.selectOptions = [ | ||
| 416 | { value: xmlData.startEvent._id, label: "浏览记录" }, | ||
| 417 | ...this.selectOptions, | ||
| 418 | ]; | ||
| 419 | this.selectOptions = this.selectOptions | ||
| 420 | .map((item) => { | ||
| 421 | if (this.formData.finishedInfo.finishedTaskSet.includes(item.value)) { | ||
| 422 | return item; | ||
| 423 | } | ||
| 424 | if ( | ||
| 425 | this.formData.finishedInfo.unfinishedTaskSet.includes(item.value) | ||
| 426 | ) { | ||
| 427 | return item; | ||
| 428 | } | ||
| 429 | }) | ||
| 430 | .filter(Boolean); | ||
| 431 | this.selectValue = xmlData.startEvent._id; | ||
| 432 | this.clearViewer("a"); | ||
| 433 | if (xml != null && xml !== "") { | ||
| 434 | try { | ||
| 435 | this.bpmnViewer = new BpmnViewer({ | ||
| 436 | additionalModules: [ | ||
| 437 | // 移动整个画布 | ||
| 438 | MoveCanvasModule, | ||
| 439 | ], | ||
| 440 | container: this.$refs.processCanvas, | ||
| 441 | }); | ||
| 442 | // 任务节点悬浮事件 | ||
| 443 | this.bpmnViewer.on("element.click", ({ element }) => { | ||
| 444 | this.onSelectElement(element); | ||
| 445 | }); | ||
| 446 | await this.bpmnViewer.importXML(xml); | ||
| 447 | this.isLoading = true; | ||
| 448 | this.addCustomDefs(); | ||
| 449 | } catch (e) { | ||
| 450 | this.clearViewer("b"); | ||
| 451 | } finally { | ||
| 452 | this.isLoading = false; | ||
| 453 | this.setProcessStatus(this.processNodeInfo); | ||
| 454 | this.$nextTick(() => { | ||
| 455 | this.processReZoom(); | ||
| 456 | }); | ||
| 457 | } | ||
| 458 | } | ||
| 459 | }, | ||
| 460 | // 获取流程记录 | ||
| 461 | /** | ||
| 462 | * @description: 获取流程记录 | ||
| 463 | * @author: renchao | ||
| 464 | */ | ||
| 465 | getCommentList() { | ||
| 466 | this.formData.allCommentList.forEach(async (item, index) => { | ||
| 467 | // item.comments.forEach(element => { | ||
| 468 | // if(element.type=="COMPLETE"){ | ||
| 469 | // this.formData.allCommentList[index].idea=element.message | ||
| 470 | // this.formData.allCommentList[index].controls="完成" | ||
| 471 | // } | ||
| 472 | // }); | ||
| 473 | let type = item.comments[item.comments.length - 1].type; | ||
| 474 | this.formData.allCommentList[index].idea = | ||
| 475 | item.comments[item.comments.length - 1].message; | ||
| 476 | // 操作方式 | ||
| 477 | let controls = ""; | ||
| 478 | // 正在办理 | ||
| 479 | // 已完结 | ||
| 480 | // 已退回 | ||
| 481 | switch (type) { | ||
| 482 | case "COMPLETE": | ||
| 483 | controls = "完成"; | ||
| 484 | break; | ||
| 485 | case "CLAIM": | ||
| 486 | controls = "完成"; | ||
| 487 | break; | ||
| 488 | case "ASSIGN": | ||
| 489 | controls = "转办"; | ||
| 490 | break; | ||
| 491 | case "DELEGATE": | ||
| 492 | controls = "委派"; | ||
| 493 | break; | ||
| 494 | case "UNCLAIM": | ||
| 495 | controls = "取消认领"; | ||
| 496 | break; | ||
| 497 | case "STOP": | ||
| 498 | controls = "终止"; | ||
| 499 | break; | ||
| 500 | case "BACK": | ||
| 501 | controls = "退回"; | ||
| 502 | break; | ||
| 503 | } | ||
| 504 | this.formData.allCommentList[index].controls = controls; | ||
| 505 | this.formData.allCommentList[index].agent = item.assignee.name; | ||
| 506 | }); | ||
| 507 | this.formData.handlinglist.forEach(async (item, index) => { | ||
| 508 | if (item.assignee.name) { | ||
| 509 | this.formData.handlinglist[index].agent = item.assignee.name; | ||
| 510 | } else { | ||
| 511 | let str = ""; | ||
| 512 | item.countersign.forEach((item) => { | ||
| 513 | str += item.name + ","; | ||
| 514 | }); | ||
| 515 | str = str.slice(0, -1); | ||
| 516 | this.formData.allCommentList[index].agent = str; | ||
| 517 | } | ||
| 518 | }); | ||
| 519 | this.taskList = [ | ||
| 520 | ...this.formData.allCommentList, | ||
| 521 | ...this.formData.handlinglist, | ||
| 522 | ]; | ||
| 523 | // this.taskList =this.formData.allCommentList; | ||
| 524 | // 处理数据之后赋值 | ||
| 525 | this.taskCommentList = this.taskList; | ||
| 526 | this.taskCommentList = this.taskCommentList.sort(this.sortDownDate); | ||
| 527 | }, | ||
| 528 | /** | ||
| 529 | * 时间排序函数 | ||
| 530 | * @description: formatDate | ||
| 531 | * @param {*} row | ||
| 532 | * @param {*} column | ||
| 533 | * @author: renchao | ||
| 534 | */ | ||
| 535 | |||
| 536 | sortDownDate(a, b) { | ||
| 537 | return Date.parse(a.createTime) - Date.parse(b.createTime); | ||
| 538 | }, | ||
| 539 | // 设置流程图元素状态 | ||
| 540 | /** | ||
| 541 | * @description: 设置流程图元素状态 | ||
| 542 | * @param {*} processNodeInfo | ||
| 543 | * @author: renchao | ||
| 544 | */ | ||
| 545 | setProcessStatus(processNodeInfo) { | ||
| 546 | this.processNodeInfo = processNodeInfo; | ||
| 547 | if ( | ||
| 548 | this.isLoading || | ||
| 549 | this.processNodeInfo == null || | ||
| 550 | this.bpmnViewer == null | ||
| 551 | ) | ||
| 552 | return; | ||
| 553 | const { | ||
| 554 | finishedTaskSet, | ||
| 555 | rejectedTaskSet, | ||
| 556 | unfinishedTaskSet, | ||
| 557 | finishedSequenceFlowSet, | ||
| 558 | } = this.processNodeInfo; | ||
| 559 | const canvas = this.bpmnViewer.get("canvas"); | ||
| 560 | const elementRegistry = this.bpmnViewer.get("elementRegistry"); | ||
| 561 | if (Array.isArray(finishedSequenceFlowSet)) { | ||
| 562 | finishedSequenceFlowSet.forEach((item) => { | ||
| 563 | if (item != null) { | ||
| 564 | canvas.addMarker(item, "success"); | ||
| 565 | const element = elementRegistry.get(item); | ||
| 566 | const conditionExpression = | ||
| 567 | element.businessObject.conditionExpression; | ||
| 568 | if (conditionExpression) { | ||
| 569 | canvas.addMarker(item, "condition-expression"); | ||
| 570 | } | ||
| 571 | } | ||
| 572 | }); | ||
| 573 | } | ||
| 574 | if (Array.isArray(finishedTaskSet)) { | ||
| 575 | finishedTaskSet.forEach((item) => canvas.addMarker(item, "success")); | ||
| 576 | } | ||
| 577 | if (Array.isArray(unfinishedTaskSet)) { | ||
| 578 | unfinishedTaskSet.forEach((item) => canvas.addMarker(item, "primary")); | ||
| 579 | } | ||
| 580 | if (Array.isArray(rejectedTaskSet)) { | ||
| 581 | rejectedTaskSet.forEach((item) => { | ||
| 582 | if (item != null) { | ||
| 583 | const element = elementRegistry.get(item); | ||
| 584 | if (element.type.includes("Task")) { | ||
| 585 | canvas.addMarker(item, "danger"); | ||
| 586 | } else { | ||
| 587 | canvas.addMarker(item, "warning"); | ||
| 588 | } | ||
| 589 | } | ||
| 590 | }); | ||
| 591 | } | ||
| 592 | }, | ||
| 593 | }, | ||
| 594 | }; | ||
| 595 | </script> | ||
| 596 | <style scoped lang="scss"> | ||
| 597 | .information-list { | ||
| 598 | height: 220px; | ||
| 599 | margin-top: 10px; | ||
| 600 | |||
| 601 | p { | ||
| 602 | font-size: 16px; | ||
| 603 | line-height: 24px; | ||
| 604 | } | ||
| 605 | } | ||
| 606 | /deep/.bjs-powered-by { | ||
| 607 | display: none; | ||
| 608 | } | ||
| 609 | // /deep/.information-list { | ||
| 610 | // height: 170px; | ||
| 611 | // overflow: visible; | ||
| 612 | // } | ||
| 613 | .cutline { | ||
| 614 | |||
| 615 | float: right; | ||
| 616 | width: 30%; | ||
| 617 | height: 30px; | ||
| 618 | display: flex; | ||
| 619 | margin-right: 30px; | ||
| 620 | justify-content: space-between; | ||
| 621 | .cutlines{ | ||
| 622 | line-height: 30px; | ||
| 623 | font-weight: 600; | ||
| 624 | margin-right: 50px; | ||
| 625 | } | ||
| 626 | .concent{ | ||
| 627 | line-height: 30px; | ||
| 628 | line-height: 14px; | ||
| 629 | text-align: center; | ||
| 630 | align-items: center; | ||
| 631 | margin: auto; | ||
| 632 | padding: 3px; | ||
| 633 | border-radius: 4px; | ||
| 634 | border:1px solid #fff; | ||
| 635 | } | ||
| 636 | |||
| 637 | } | ||
| 638 | </style> |
| 1 | <!-- | ||
| 2 | * @Description: | ||
| 3 | * @Autor: renchao | ||
| 4 | * @LastEditTime: 2023-07-17 13:50:53 | ||
| 5 | --> | ||
| 6 | <template> | ||
| 7 | <lb-table :column="column" :maxHeight="200" :heightNumSetting="true" :pagination="false" :key="key" :data="tableData"> | ||
| 8 | </lb-table> | ||
| 9 | </template> | ||
| 10 | <script> | ||
| 11 | import addQlr from './dialog/addQlr.vue' | ||
| 12 | import { mapGetters } from 'vuex' | ||
| 13 | export default { | ||
| 14 | components: { | ||
| 15 | addQlr | ||
| 16 | }, | ||
| 17 | computed: { | ||
| 18 | ...mapGetters(["dictData"]), | ||
| 19 | }, | ||
| 20 | props: { | ||
| 21 | tableData: { | ||
| 22 | type: Array, | ||
| 23 | default: function () { | ||
| 24 | return [] | ||
| 25 | } | ||
| 26 | }, | ||
| 27 | gyfs: { | ||
| 28 | type: String, | ||
| 29 | default: '1' | ||
| 30 | } | ||
| 31 | }, | ||
| 32 | data () { | ||
| 33 | return { | ||
| 34 | key: 0, | ||
| 35 | dataIndex: 0, | ||
| 36 | dialog: false, | ||
| 37 | details: {}, | ||
| 38 | tableDataList: [], | ||
| 39 | qlrCommonTable: [ | ||
| 40 | { | ||
| 41 | label: '序号', | ||
| 42 | type: 'index', | ||
| 43 | width: '50', | ||
| 44 | render: (h, scope) => { | ||
| 45 | return ( | ||
| 46 | <div> | ||
| 47 | {scope.$index + 1} | ||
| 48 | </div> | ||
| 49 | ) | ||
| 50 | } | ||
| 51 | }, | ||
| 52 | // { | ||
| 53 | // prop: "bdcdyh", | ||
| 54 | // label: "不动产单元号" | ||
| 55 | // }, | ||
| 56 | { | ||
| 57 | prop: "zl", | ||
| 58 | label: "坐落" | ||
| 59 | }, | ||
| 60 | { | ||
| 61 | prop: "shbw", | ||
| 62 | label: "室号部位" | ||
| 63 | }, | ||
| 64 | { | ||
| 65 | prop: "fwxzmc", | ||
| 66 | label: "房屋性质" | ||
| 67 | }, | ||
| 68 | { | ||
| 69 | prop: "sjc", | ||
| 70 | label: "层号" | ||
| 71 | }, | ||
| 72 | { | ||
| 73 | prop: "jzmj", | ||
| 74 | label: "建筑面积" | ||
| 75 | }, | ||
| 76 | { | ||
| 77 | prop: "fwlxmc", | ||
| 78 | label: "房屋类型" | ||
| 79 | }, | ||
| 80 | { | ||
| 81 | prop: "showfwyt", | ||
| 82 | label: "房屋用途" | ||
| 83 | }, | ||
| 84 | { | ||
| 85 | prop: "showfwjg", | ||
| 86 | label: "房屋结构" | ||
| 87 | }, | ||
| 88 | ], | ||
| 89 | column: this.qlrCommonTable | ||
| 90 | } | ||
| 91 | }, | ||
| 92 | watch: { | ||
| 93 | tableData: { | ||
| 94 | handler: function (val, oldVal) { | ||
| 95 | let that = this; | ||
| 96 | if (val.length == 0 || !val) { | ||
| 97 | } else { | ||
| 98 | that.tableDataList = _.cloneDeep(val) | ||
| 99 | } | ||
| 100 | }, | ||
| 101 | immediate: true, | ||
| 102 | deep: true | ||
| 103 | }, | ||
| 104 | gyfs: { | ||
| 105 | handler (newVal, oldValue) { | ||
| 106 | let dataList = _.cloneDeep(this.qlrCommonTable) | ||
| 107 | if (newVal == '1') { | ||
| 108 | this.column = _.cloneDeep(dataList).slice(1, dataList.length) | ||
| 109 | } else if ((newVal == '2')) { | ||
| 110 | this.column = dataList | ||
| 111 | } else { | ||
| 112 | this.column = _.cloneDeep(dataList) | ||
| 113 | this.column.splice( | ||
| 114 | 2, 0, { | ||
| 115 | prop: "qlbl", | ||
| 116 | label: "份数" | ||
| 117 | }) | ||
| 118 | } | ||
| 119 | }, | ||
| 120 | immediate: true | ||
| 121 | } | ||
| 122 | }, | ||
| 123 | methods: { | ||
| 124 | } | ||
| 125 | } | ||
| 126 | </script> | ||
| 127 | <style scoped lang="scss"> | ||
| 128 | /deep/.el-table th { | ||
| 129 | height: 30px !important; | ||
| 130 | } | ||
| 131 | /deep/.el-table--small .el-table__cell { | ||
| 132 | padding: 5px; | ||
| 133 | } | ||
| 134 | </style> | ||
| 135 |
| 1 | <!-- | ||
| 2 | * @Description: | ||
| 3 | * @Autor: renchao | ||
| 4 | * @LastEditTime: 2023-09-14 17:19:26 | ||
| 5 | --> | ||
| 6 | <template> | ||
| 7 | <div class="slxx sdqxx"> | ||
| 8 | <el-form | ||
| 9 | :model="ruleForm" | ||
| 10 | ref="ruleForm" | ||
| 11 | v-Loading="loading" | ||
| 12 | :label-position="flag ? 'top' : ''" | ||
| 13 | :inline="flag" | ||
| 14 | label-width="130px"> | ||
| 15 | <div class="slxx_con" :class="flag ? 'formMarginBot0' : ''"> | ||
| 16 | <div class="slxx_title title-block"> | ||
| 17 | 电力信息 | ||
| 18 | <div class="triangle"></div> | ||
| 19 | </div> | ||
| 20 | <el-row :gutter="10"> | ||
| 21 | <el-col :span="8"> | ||
| 22 | <el-form-item label="服务代码:"> | ||
| 23 | <el-input v-model="ruleForm.serviceCode"></el-input> | ||
| 24 | </el-form-item> | ||
| 25 | </el-col> | ||
| 26 | <el-col :span="8"> | ||
| 27 | <el-form-item label="行政区划区县代码:"> | ||
| 28 | <el-input v-model="ruleForm.areacode"></el-input> | ||
| 29 | </el-form-item> | ||
| 30 | </el-col> | ||
| 31 | <el-col :span="8"> | ||
| 32 | <el-form-item label="登记系统业务号:"> | ||
| 33 | <el-input v-model="ruleForm.ywh"></el-input> | ||
| 34 | </el-form-item> | ||
| 35 | </el-col> | ||
| 36 | </el-row> | ||
| 37 | |||
| 38 | <el-row :gutter="10"> | ||
| 39 | <el-col :span="8"> | ||
| 40 | <el-form-item label="推送日期:"> | ||
| 41 | <el-input v-model="ruleForm.SENDTIME"></el-input> | ||
| 42 | </el-form-item> | ||
| 43 | </el-col> | ||
| 44 | <el-col :span="8"> | ||
| 45 | <el-form-item label="原户主姓名:"> | ||
| 46 | <el-input v-model="ruleForm.mcOld"></el-input> | ||
| 47 | </el-form-item> | ||
| 48 | </el-col> | ||
| 49 | <el-col :span="8"> | ||
| 50 | <el-form-item label="原户主身份证号码:"> | ||
| 51 | <el-input v-model="ruleForm.zjhmOld"></el-input> | ||
| 52 | </el-form-item> | ||
| 53 | </el-col> | ||
| 54 | </el-row> | ||
| 55 | <el-row :gutter="10"> | ||
| 56 | <el-col :span="8"> | ||
| 57 | <el-form-item label="原户主联系电话:"> | ||
| 58 | <el-input v-model="ruleForm.lxdhOld"></el-input> | ||
| 59 | </el-form-item> | ||
| 60 | </el-col> | ||
| 61 | <el-col :span="8"> | ||
| 62 | <el-form-item label="新户主姓名:"> | ||
| 63 | <el-input v-model="ruleForm.mcNew"></el-input> | ||
| 64 | </el-form-item> | ||
| 65 | </el-col> | ||
| 66 | <el-col :span="8"> | ||
| 67 | <el-form-item label="新户主身份证号码:"> | ||
| 68 | <el-input v-model="ruleForm.zjhmNew"></el-input> | ||
| 69 | </el-form-item> | ||
| 70 | </el-col> | ||
| 71 | </el-row> | ||
| 72 | <el-row :gutter="10"> | ||
| 73 | <el-col :span="8"> | ||
| 74 | <el-form-item label="新户主联系电话:"> | ||
| 75 | <el-input v-model="ruleForm.lxdhNew"></el-input> | ||
| 76 | </el-form-item> | ||
| 77 | </el-col> | ||
| 78 | <el-col :span="8"> | ||
| 79 | <el-form-item label="房产证编号:"> | ||
| 80 | <el-input v-model="ruleForm.fczbh"></el-input> | ||
| 81 | </el-form-item> | ||
| 82 | </el-col> | ||
| 83 | <el-col :span="8"> | ||
| 84 | <el-form-item label="是否过户:"> | ||
| 85 | <el-switch | ||
| 86 | v-model="ruleForm.sfgh" | ||
| 87 | :active-value='1' | ||
| 88 | active-text="是" | ||
| 89 | :inactive-value="0" | ||
| 90 | inactive-text="否"> | ||
| 91 | </el-switch> | ||
| 92 | </el-form-item> | ||
| 93 | </el-col> | ||
| 94 | |||
| 95 | </el-row> | ||
| 96 | <el-row :gutter="10"> | ||
| 97 | <el-col :span="24"> | ||
| 98 | <el-form-item label="房屋坐落(地址):"> | ||
| 99 | <el-input v-model="ruleForm.fwzl" type="textarea" | ||
| 100 | :rows="2"></el-input> | ||
| 101 | </el-form-item> | ||
| 102 | </el-col> | ||
| 103 | </el-row> | ||
| 104 | <el-row class="btn" v-if="viewEdit"> | ||
| 105 | <el-form-item> | ||
| 106 | <el-button type="primary" @click="onSubmit">保存</el-button> | ||
| 107 | </el-form-item> | ||
| 108 | </el-row> | ||
| 109 | </div> | ||
| 110 | </el-form> | ||
| 111 | </div> | ||
| 112 | </template> | ||
| 113 | <script> | ||
| 114 | import { mapGetters } from "vuex"; | ||
| 115 | import { getDlxxByBsmSldy, saveOrUpdateDlxx } from "@/api/sfxx.js"; | ||
| 116 | export default { | ||
| 117 | computed: { | ||
| 118 | ...mapGetters(["dictData", "flag"]), | ||
| 119 | }, | ||
| 120 | mounted () { | ||
| 121 | // this.loading = true | ||
| 122 | this.viewEdit = this.$parent.currentSelectTab.ableOperation; | ||
| 123 | this.propsParam = this.$attrs; | ||
| 124 | var formdata = new FormData(); | ||
| 125 | formdata.append("bsmSldy", this.propsParam.bsmSldy); | ||
| 126 | formdata.append("djlx", this.propsParam.djlx); | ||
| 127 | formdata.append("isEdit", this.viewEdit); | ||
| 128 | console.log(this.propsParam) | ||
| 129 | this.getDlxxByBsmSldy() | ||
| 130 | }, | ||
| 131 | data () { | ||
| 132 | return { | ||
| 133 | loading: false, | ||
| 134 | //表单是否可操作 | ||
| 135 | viewEdit: false, | ||
| 136 | ruleForm: { | ||
| 137 | SFGH: 1 | ||
| 138 | } | ||
| 139 | } | ||
| 140 | }, | ||
| 141 | methods: { | ||
| 142 | getDlxxByBsmSldy() { | ||
| 143 | getDlxxByBsmSldy(this.propsParam.bsmSldy).then((res) => { | ||
| 144 | if (res.code === 200) { | ||
| 145 | if (res.result != null) { | ||
| 146 | this.ruleForm = res.result | ||
| 147 | } | ||
| 148 | } | ||
| 149 | }); | ||
| 150 | }, | ||
| 151 | saveOrUpdateDlxx() { | ||
| 152 | saveOrUpdateDlxx(this.ruleForm).then((res) => { | ||
| 153 | if (res.code === 200) { | ||
| 154 | this.$message.success("成功") | ||
| 155 | } | ||
| 156 | }); | ||
| 157 | }, | ||
| 158 | onSubmit () { | ||
| 159 | this.saveOrUpdateDlxx() | ||
| 160 | } | ||
| 161 | } | ||
| 162 | } | ||
| 163 | </script> | ||
| 164 | <style scoped lang="scss"> | ||
| 165 | @import "~@/styles/public.scss"; | ||
| 166 | @import "~@/styles/slxx/slxx.scss"; | ||
| 167 | </style> |
| 1 | <!-- | ||
| 2 | * @Description: | ||
| 3 | * @Autor: renchao | ||
| 4 | * @LastEditTime: 2023-12-29 16:35:50 | ||
| 5 | --> | ||
| 6 | <template> | ||
| 7 | <div class='sfxx'> | ||
| 8 | <div class="sfxx-left"> | ||
| 9 | <div class="slxx_title title-block"> | ||
| 10 | 基本信息 | ||
| 11 | <div class="triangle"></div> | ||
| 12 | </div> | ||
| 13 | <ul> | ||
| 14 | <li> | ||
| 15 | <p>业务号</p> | ||
| 16 | <p>{{detail.ywh}}</p> | ||
| 17 | </li> | ||
| 18 | <li> | ||
| 19 | <p>申请登记类型</p> | ||
| 20 | <p>{{detail.sqdjlx}}</p> | ||
| 21 | </li> | ||
| 22 | <li> | ||
| 23 | <p>联系人</p> | ||
| 24 | <p>{{detail.lxr}}</p> | ||
| 25 | </li> | ||
| 26 | <li> | ||
| 27 | <p>联系人电话</p> | ||
| 28 | <p>{{detail.lxdh}}</p> | ||
| 29 | </li> | ||
| 30 | <li> | ||
| 31 | <p>缴费人</p> | ||
| 32 | <p><el-input v-model="detail.jfr"></el-input></p> | ||
| 33 | </li> | ||
| 34 | <li> | ||
| 35 | <p>缴费单号</p> | ||
| 36 | <p><el-input v-model="detail.jfdh"></el-input></p> | ||
| 37 | </li> | ||
| 38 | <li> | ||
| 39 | <p>应收金额</p> | ||
| 40 | <p style="color:red">{{detail.ysje}}元</p> | ||
| 41 | </li> | ||
| 42 | <li> | ||
| 43 | <p>实收金额</p> | ||
| 44 | <p><el-input v-model="detail.ssje"></el-input></p> | ||
| 45 | </li> | ||
| 46 | <li> | ||
| 47 | <p>备注</p> | ||
| 48 | <p><el-input v-model="detail.bz"></el-input></p> | ||
| 49 | </li> | ||
| 50 | </ul> | ||
| 51 | </div> | ||
| 52 | <div class="sfxx-right"> | ||
| 53 | <div class="slxx_title title-block"> | ||
| 54 | 收费明细 | ||
| 55 | <!-- <div class="triangle"></div> --> | ||
| 56 | <el-button type="primary" @click="hanldeAdd" style="float:right;margin-top:-5px">增加</el-button> | ||
| 57 | </div> | ||
| 58 | <el-table :data="tableData.data" border :height="355"> | ||
| 59 | <el-table-column v-for="item in tableData.columns" :key="item.index" :prop="item.prop" :label="item.label" align="center"> | ||
| 60 | </el-table-column> | ||
| 61 | <el-table-column label="操作" width="50"> | ||
| 62 | <template slot-scope="scope"> | ||
| 63 | <el-button type="text" @click="handleDelete(scope.row)">删除</el-button> | ||
| 64 | </template> | ||
| 65 | </el-table-column> | ||
| 66 | </el-table> | ||
| 67 | <div class="slxx_title title-block"> | ||
| 68 | 票据 | ||
| 69 | <div style="height:250px"> | ||
| 70 | <img src="../../../image/pj.jpg" alt="" style="height:100%"> | ||
| 71 | </div> | ||
| 72 | </div> | ||
| 73 | </div> | ||
| 74 | </div> | ||
| 75 | </template> | ||
| 76 | <script> | ||
| 77 | import { mapGetters } from "vuex"; | ||
| 78 | import { getSfmxList, deleteSfmx } from "@/api/sfxx.js"; | ||
| 79 | export default { | ||
| 80 | components: {}, | ||
| 81 | data () { | ||
| 82 | return { | ||
| 83 | detail: { | ||
| 84 | ywh: '', | ||
| 85 | sqdjlx: '', | ||
| 86 | lxr: '', | ||
| 87 | lxdh: '', | ||
| 88 | jfr: '', | ||
| 89 | jfdh: '', | ||
| 90 | ysje: '', | ||
| 91 | ssje: '', | ||
| 92 | bz: '' | ||
| 93 | }, | ||
| 94 | tableData: { | ||
| 95 | columns: [ | ||
| 96 | { | ||
| 97 | prop: "sfdw", | ||
| 98 | label: "收费单位", | ||
| 99 | }, | ||
| 100 | { | ||
| 101 | label: '是否额外收费', | ||
| 102 | align: 'center', | ||
| 103 | render: (h, scope) => { | ||
| 104 | return ( | ||
| 105 | <div> | ||
| 106 | {scope.row.sfewsf == '1' ? <span>是</span> : <span>否</span>} | ||
| 107 | </div> | ||
| 108 | ) | ||
| 109 | } | ||
| 110 | }, | ||
| 111 | { | ||
| 112 | prop: "sfry", | ||
| 113 | label: "收费人员", | ||
| 114 | }, | ||
| 115 | { | ||
| 116 | prop: "sfkmmc", | ||
| 117 | label: "收费科目名称", | ||
| 118 | }, | ||
| 119 | { | ||
| 120 | prop: "sjffr", | ||
| 121 | label: "实际付费人", | ||
| 122 | }, | ||
| 123 | { | ||
| 124 | prop: "ssje", | ||
| 125 | label: "实收金额", | ||
| 126 | }, | ||
| 127 | { | ||
| 128 | prop: "ysje", | ||
| 129 | label: "应收金额", | ||
| 130 | } | ||
| 131 | ], | ||
| 132 | data: [] | ||
| 133 | } | ||
| 134 | } | ||
| 135 | }, | ||
| 136 | computed: { | ||
| 137 | ...mapGetters(["workFresh"]), | ||
| 138 | }, | ||
| 139 | watch: { | ||
| 140 | workFresh: { | ||
| 141 | handler (newVal, oldVal) { | ||
| 142 | if (newVal) this.getList(); | ||
| 143 | }, | ||
| 144 | }, | ||
| 145 | }, | ||
| 146 | mounted () { | ||
| 147 | this.getList() | ||
| 148 | }, | ||
| 149 | methods: { | ||
| 150 | getList () { | ||
| 151 | let bsmBusiness = this.$route.query.bsmBusiness ? this.$route.query.bsmBusiness : window.currentSelect.bsmBusiness | ||
| 152 | getSfmxList(bsmBusiness).then(res => { | ||
| 153 | this.tableData.data = res.result | ||
| 154 | }) | ||
| 155 | }, | ||
| 156 | hanldeAdd () { | ||
| 157 | let bsmBusiness = this.$route.query.bsmBusiness ? this.$route.query.bsmBusiness : window.currentSelect.bsmBusiness | ||
| 158 | this.$popupDialog('新增', 'workflow/components/dialog/xzsf', { bsmBusiness: bsmBusiness }, '50%', true) | ||
| 159 | }, | ||
| 160 | handleDelete (row) { | ||
| 161 | let that = this | ||
| 162 | this.$confirm('此操作将永久删除该 是否继续?', '提示', { | ||
| 163 | confirmButtonText: '确定', | ||
| 164 | cancelButtonText: '取消', | ||
| 165 | type: 'warning' | ||
| 166 | }).then(() => { | ||
| 167 | deleteSfmx(row.bsmSf).then(res => { | ||
| 168 | if (res.code == 200) { | ||
| 169 | that.$message({ | ||
| 170 | message: '删除成功!', | ||
| 171 | type: 'success' | ||
| 172 | }) | ||
| 173 | that.getList() | ||
| 174 | } else { | ||
| 175 | that.$message({ | ||
| 176 | type: 'info', | ||
| 177 | message: res.message | ||
| 178 | }) | ||
| 179 | } | ||
| 180 | }) | ||
| 181 | }).catch(() => { | ||
| 182 | this.$message({ | ||
| 183 | type: 'info', | ||
| 184 | message: '已取消删除' | ||
| 185 | }) | ||
| 186 | }) | ||
| 187 | |||
| 188 | } | ||
| 189 | } | ||
| 190 | } | ||
| 191 | </script> | ||
| 192 | <style scoped lang='scss'> | ||
| 193 | @import "~@/styles/public.scss"; | ||
| 194 | .sfxx { | ||
| 195 | display: flex; | ||
| 196 | padding: 10px; | ||
| 197 | height: 100%; | ||
| 198 | box-sizing: border-box; | ||
| 199 | &-left { | ||
| 200 | width: 50%; | ||
| 201 | margin-right: 10px; | ||
| 202 | ul { | ||
| 203 | border-radius: 3px; | ||
| 204 | } | ||
| 205 | li:last-child { | ||
| 206 | border-bottom: 1px solid #e8e5e5; | ||
| 207 | } | ||
| 208 | li { | ||
| 209 | display: flex; | ||
| 210 | border: 1px solid #e8e5e5; | ||
| 211 | border-bottom: none; | ||
| 212 | |||
| 213 | p:nth-child(1) { | ||
| 214 | width: 35%; | ||
| 215 | text-align: center; | ||
| 216 | background-color: #fafafa; | ||
| 217 | border-right: 1px solid #e8e5e5; | ||
| 218 | padding: 10px 0; | ||
| 219 | } | ||
| 220 | p:nth-child(2) { | ||
| 221 | width: 65%; | ||
| 222 | display: flex; | ||
| 223 | align-items: center; | ||
| 224 | box-sizing: border-box; | ||
| 225 | margin: 0 10px; | ||
| 226 | } | ||
| 227 | } | ||
| 228 | } | ||
| 229 | &-right { | ||
| 230 | width: 50%; | ||
| 231 | margin-left: 10px; | ||
| 232 | } | ||
| 233 | } | ||
| 234 | </style> |
| 1 | <!-- | ||
| 2 | * @Description: 审批意见 | ||
| 3 | * @Autor: renchao | ||
| 4 | * @LastEditTime: 2024-01-26 08:45:07 | ||
| 5 | --> | ||
| 6 | <template> | ||
| 7 | <div class="spyj" v-Loading="loading"> | ||
| 8 | <div class="box"> | ||
| 9 | <div class="spyj_title"> | ||
| 10 | <div class="righttitle">审批表</div> | ||
| 11 | </div> | ||
| 12 | |||
| 13 | <div v-for="(item, index) in tableData" :key="index"> | ||
| 14 | <el-form | ||
| 15 | :model="tableData[index]" | ||
| 16 | label-width="120px" | ||
| 17 | ref="ruleForm'"> | ||
| 18 | <div class="spyj_form"> | ||
| 19 | <div class="item_left"> | ||
| 20 | <div class="right">{{ item.jdmc }}意见</div> | ||
| 21 | </div> | ||
| 22 | <div class="item_right"> | ||
| 23 | <el-row> | ||
| 24 | <el-col :span="24"> | ||
| 25 | <el-form-item | ||
| 26 | label-width="0" | ||
| 27 | class="opinion_item"> | ||
| 28 | <el-input | ||
| 29 | :disabled="!viewEdit || item.show" | ||
| 30 | type="textarea" | ||
| 31 | :rows="4" | ||
| 32 | class="opinion" | ||
| 33 | placeholder="" | ||
| 34 | v-model="item.shyj"></el-input> | ||
| 35 | <el-button | ||
| 36 | class="opinion_btn" | ||
| 37 | @click="commonOpinion(index)" | ||
| 38 | :disabled="!viewEdit|| item.show">常用意见</el-button> | ||
| 39 | </el-form-item> | ||
| 40 | </el-col> | ||
| 41 | </el-row> | ||
| 42 | <el-row> | ||
| 43 | <el-col :span="16"> | ||
| 44 | <el-form-item label="审查人"> | ||
| 45 | {{ item.shryxm }} | ||
| 46 | </el-form-item> | ||
| 47 | </el-col> | ||
| 48 | <el-col :span="8"> | ||
| 49 | <el-form-item disabled label="审核时间" :key="refresh"> | ||
| 50 | {{ item.shjssj }} | ||
| 51 | </el-form-item> | ||
| 52 | </el-col> | ||
| 53 | </el-row> | ||
| 54 | </div> | ||
| 55 | </div> | ||
| 56 | </el-form> | ||
| 57 | </div> | ||
| 58 | <div class="submit_button" v-if="viewEdit"> | ||
| 59 | <el-button type="primary" :disabled="shows" @click="onSubmit()">保存</el-button> | ||
| 60 | </div> | ||
| 61 | </div> | ||
| 62 | </div> | ||
| 63 | </template> | ||
| 64 | <script> | ||
| 65 | import { saveSpyjBySlsq, getSpyjList } from "@/api/opinion.js"; | ||
| 66 | import { mapGetters } from "vuex"; | ||
| 67 | import { getNewDatesh } from "@/utils/util"; | ||
| 68 | export default { | ||
| 69 | computed: { | ||
| 70 | ...mapGetters(["dqhj", "yjsqOptions", "userInfo"]), | ||
| 71 | }, | ||
| 72 | data () { | ||
| 73 | return { | ||
| 74 | loading: false, | ||
| 75 | currentindex: 0, | ||
| 76 | refresh: 10, | ||
| 77 | viewEdit: false, | ||
| 78 | bsmSlsq: this.$route.query.bsmSlsq, | ||
| 79 | bestepid: this.$route.query.bestepid, | ||
| 80 | propsParam: {}, | ||
| 81 | tableData: [], | ||
| 82 | shows: false, | ||
| 83 | }; | ||
| 84 | }, | ||
| 85 | |||
| 86 | watch: { | ||
| 87 | yjsqOptions: { | ||
| 88 | handler (val) { | ||
| 89 | this.add(val.opinion); | ||
| 90 | }, | ||
| 91 | deep: true, | ||
| 92 | immediate: true, | ||
| 93 | }, | ||
| 94 | dqhj: { | ||
| 95 | handler (val) { | ||
| 96 | this.propsParam = this.$attrs; | ||
| 97 | this.dataset() | ||
| 98 | this.getShList(); | ||
| 99 | |||
| 100 | }, | ||
| 101 | deep: true, | ||
| 102 | immediate: true, | ||
| 103 | }, | ||
| 104 | |||
| 105 | }, | ||
| 106 | methods: { | ||
| 107 | /** | ||
| 108 | * @description: dataset | ||
| 109 | * @param {*} 数据处理 | ||
| 110 | * @author: renchao | ||
| 111 | */ | ||
| 112 | dataset () { | ||
| 113 | this.viewEdit = this.$parent.currentSelectTab.ableOperation; | ||
| 114 | }, | ||
| 115 | /** | ||
| 116 | * @description: getShList | ||
| 117 | * @param {*} obj | ||
| 118 | * @author: renchao | ||
| 119 | */ | ||
| 120 | getShList () { | ||
| 121 | this.loading = true | ||
| 122 | var formdata = new FormData(); | ||
| 123 | formdata.append("bsmBusiness", this.propsParam.bsmBusiness); | ||
| 124 | formdata.append("bestepid", this.$route.query.bestepid); | ||
| 125 | |||
| 126 | getSpyjList(formdata).then((res) => { | ||
| 127 | if (res.code === 200 && res.result) { | ||
| 128 | this.tableData = res.result; | ||
| 129 | if (this.shows) { | ||
| 130 | this.shows = false; | ||
| 131 | } | ||
| 132 | var index = this.tableData.findIndex( | ||
| 133 | (item) => item.jddm === this.$parent.dqhj | ||
| 134 | ); | ||
| 135 | if (index == -1) { | ||
| 136 | switch (this.$parent.dqhj) { | ||
| 137 | case "cs": | ||
| 138 | this.tableData.push({ jdmc: "初审", jddm: "cs", sxh: 1 }); | ||
| 139 | break; | ||
| 140 | case "fs": | ||
| 141 | this.tableData.push({ jdmc: "复审", jddm: "fs", sxh: 2 }); | ||
| 142 | break; | ||
| 143 | case "hd": | ||
| 144 | this.tableData.push({ jdmc: "核定", jddm: "hd", sxh: 3 }); | ||
| 145 | break; | ||
| 146 | } | ||
| 147 | } | ||
| 148 | this.tableData.forEach((item) => { | ||
| 149 | item.show = true; | ||
| 150 | if (this.$parent.dqhj == item.jddm) { | ||
| 151 | item["stepid"] = this.$route.query.bestepid; | ||
| 152 | item.shjssj = getNewDatesh(); | ||
| 153 | item.shkssj = getNewDatesh(); | ||
| 154 | item["shryxm"] = this.userInfo.name; | ||
| 155 | item["userid"] = this.userInfo.id; | ||
| 156 | item.show = false; | ||
| 157 | } | ||
| 158 | }); | ||
| 159 | this.loading = false | ||
| 160 | } | ||
| 161 | }) | ||
| 162 | }, | ||
| 163 | /** | ||
| 164 | * @description: onSubmit | ||
| 165 | * @author: renchao | ||
| 166 | */ | ||
| 167 | onSubmit () { | ||
| 168 | |||
| 169 | this.tableData.forEach((item, index) => { | ||
| 170 | item["bsmBusiness"] = this.propsParam.bsmBusiness; | ||
| 171 | item["czjg"] = "1"; | ||
| 172 | }); | ||
| 173 | var index = this.tableData.findIndex( | ||
| 174 | (item) => item.shyj == null || item.shyj == "" | ||
| 175 | ); | ||
| 176 | if (index == -1) { | ||
| 177 | this.shows = true; | ||
| 178 | saveSpyjBySlsq(this.tableData).then((res) => { | ||
| 179 | if (res.code === 200) { | ||
| 180 | this.$message.success("保存成功"); | ||
| 181 | this.refresh += 1; | ||
| 182 | this.getShList(); | ||
| 183 | } else { | ||
| 184 | this.$message.error(res.message); | ||
| 185 | } | ||
| 186 | }); | ||
| 187 | } else { | ||
| 188 | this.$message.error("意见不能为空"); | ||
| 189 | } | ||
| 190 | |||
| 191 | }, | ||
| 192 | //打开常用意见列表弹窗 | ||
| 193 | /** | ||
| 194 | * @description: 打开常用意见列表弹窗 | ||
| 195 | * @param {*} index | ||
| 196 | * @author: renchao | ||
| 197 | */ | ||
| 198 | commonOpinion (index) { | ||
| 199 | this.currentindex = index; | ||
| 200 | this.$popupDialog( | ||
| 201 | "常用意见", | ||
| 202 | "workflow/components/dialog/commonOpinion", | ||
| 203 | {}, | ||
| 204 | "70%", | ||
| 205 | true | ||
| 206 | ); | ||
| 207 | }, | ||
| 208 | /** | ||
| 209 | * @description: add | ||
| 210 | * @param {*} val | ||
| 211 | * @author: renchao | ||
| 212 | */ | ||
| 213 | add (val) { | ||
| 214 | if (val != "" && this.tableData.length > 0) { | ||
| 215 | this.$set(this.tableData[this.currentindex], "shyj", val); | ||
| 216 | } | ||
| 217 | }, | ||
| 218 | }, | ||
| 219 | }; | ||
| 220 | </script> | ||
| 221 | <style scoped lang="scss"> | ||
| 222 | @import "~@/styles/mixin.scss"; | ||
| 223 | |||
| 224 | .spyj { | ||
| 225 | width: 100%; | ||
| 226 | height: 100%; | ||
| 227 | background-color: #f5f5f5; | ||
| 228 | .box { | ||
| 229 | overflow-x: auto; | ||
| 230 | width: 100%; | ||
| 231 | height: 95%; | ||
| 232 | background: #fff; | ||
| 233 | text-align: center; | ||
| 234 | padding: 4px; | ||
| 235 | overflow-y: scroll; | ||
| 236 | padding-top: 20px; | ||
| 237 | padding: 20px 40px; | ||
| 238 | .spyj_title { | ||
| 239 | width: 100%; | ||
| 240 | height: 80px; | ||
| 241 | border: 1px solid $borderColor; | ||
| 242 | background-color: #eceef2; | ||
| 243 | display: flex; | ||
| 244 | } | ||
| 245 | .leftadd { | ||
| 246 | width: 3%; | ||
| 247 | height: 100%; | ||
| 248 | display: flex; | ||
| 249 | font-size: 14px; | ||
| 250 | text-indent: 20px; | ||
| 251 | align-items: center; | ||
| 252 | border: 1px solid $borderColor; | ||
| 253 | } | ||
| 254 | .righttitle { | ||
| 255 | width: 80%; | ||
| 256 | height: 100%; | ||
| 257 | line-height: 80px; | ||
| 258 | border: 1px solid $borderColor; | ||
| 259 | margin: auto; | ||
| 260 | font-size: 22px; | ||
| 261 | font-weight: 400; | ||
| 262 | } | ||
| 263 | } | ||
| 264 | |||
| 265 | /deep/.el-form-item { | ||
| 266 | margin-bottom: 0; | ||
| 267 | } | ||
| 268 | |||
| 269 | .bottom10 { | ||
| 270 | margin-bottom: 15px; | ||
| 271 | } | ||
| 272 | |||
| 273 | .spyj_form { | ||
| 274 | display: flex; | ||
| 275 | border: 1px solid $borderColor; | ||
| 276 | |||
| 277 | .item_left { | ||
| 278 | width: 150px; | ||
| 279 | background-color: #f8f8fa; | ||
| 280 | color: #606266; | ||
| 281 | display: flex; | ||
| 282 | font-size: 14px; | ||
| 283 | text-indent: 50px; | ||
| 284 | align-items: center; | ||
| 285 | border-right: 1px solid $borderColor; | ||
| 286 | } | ||
| 287 | |||
| 288 | .item_right { | ||
| 289 | flex: 1; | ||
| 290 | width: 100%; | ||
| 291 | |||
| 292 | /deep/.el-form-item__label { | ||
| 293 | background-color: #f8f8fa; | ||
| 294 | } | ||
| 295 | /deep/.el-form-item__content { | ||
| 296 | display: block; | ||
| 297 | text-align: left; | ||
| 298 | } | ||
| 299 | .opinion_item { | ||
| 300 | /deep/.el-form-item__error { | ||
| 301 | margin-top: -16px !important; | ||
| 302 | left: 3px; | ||
| 303 | } | ||
| 304 | border-bottom: 1px solid $borderColor; | ||
| 305 | } | ||
| 306 | |||
| 307 | .opinion { | ||
| 308 | position: relative; | ||
| 309 | font-size: 14px; | ||
| 310 | |||
| 311 | /deep/.el-textarea__inner { | ||
| 312 | border: none; | ||
| 313 | } | ||
| 314 | } | ||
| 315 | |||
| 316 | .opinion_btn { | ||
| 317 | position: absolute; | ||
| 318 | right: 15px; | ||
| 319 | bottom: 10px; | ||
| 320 | } | ||
| 321 | } | ||
| 322 | } | ||
| 323 | |||
| 324 | .submit_button { | ||
| 325 | text-align: center; | ||
| 326 | margin: 15px 0; | ||
| 327 | } | ||
| 328 | |||
| 329 | .el-date-editor.el-input { | ||
| 330 | width: 100%; | ||
| 331 | } | ||
| 332 | } | ||
| 333 | </style> |
| 1 | <!-- | ||
| 2 | * @Description: | ||
| 3 | * @Autor: renchao | ||
| 4 | * @LastEditTime: 2023-07-17 13:51:09 | ||
| 5 | --> | ||
| 6 | <template> | ||
| 7 | <lb-table :column="column" :maxHeight="300" heightNumSetting :pagination="false" :key="key" :data="tableData"> | ||
| 8 | </lb-table> | ||
| 9 | </template> | ||
| 10 | <script> | ||
| 11 | import addQlr from './dialog/addQlr.vue' | ||
| 12 | import { mapGetters } from 'vuex' | ||
| 13 | export default { | ||
| 14 | components: { | ||
| 15 | addQlr | ||
| 16 | }, | ||
| 17 | computed: { | ||
| 18 | ...mapGetters(["dictData"]), | ||
| 19 | }, | ||
| 20 | props: { | ||
| 21 | tableData: { | ||
| 22 | type: Array, | ||
| 23 | default: function () { | ||
| 24 | return [] | ||
| 25 | } | ||
| 26 | }, | ||
| 27 | gyfs: { | ||
| 28 | type: String, | ||
| 29 | default: '1' | ||
| 30 | } | ||
| 31 | }, | ||
| 32 | data () { | ||
| 33 | return { | ||
| 34 | key: 0, | ||
| 35 | dataIndex: 0, | ||
| 36 | dialog: false, | ||
| 37 | details: {}, | ||
| 38 | tableDataList: [], | ||
| 39 | qlrCommonTable: [ | ||
| 40 | { | ||
| 41 | width: '50', | ||
| 42 | renderHeader: (h, scope) => { | ||
| 43 | return <div> { | ||
| 44 | this.ableOperation ? '序号' : <i class="el-icon-plus pointer" onClick={() => { this.handleAdd() }}></i> | ||
| 45 | } | ||
| 46 | </div> | ||
| 47 | }, | ||
| 48 | render: (h, scope) => { | ||
| 49 | return ( | ||
| 50 | <div> | ||
| 51 | { | ||
| 52 | this.ableOperation ? <span>{scope.$index + 1}</span> : | ||
| 53 | <i class="el-icon-minus pointer" onClick={() => { this.handleMinus(scope.$index, scope.row) }}></i> | ||
| 54 | } | ||
| 55 | </div> | ||
| 56 | ) | ||
| 57 | } | ||
| 58 | }, | ||
| 59 | { | ||
| 60 | prop: "sqrmc", | ||
| 61 | label: "姓名/名称" | ||
| 62 | }, | ||
| 63 | { | ||
| 64 | prop: "zjzl", | ||
| 65 | label: "证件种类" | ||
| 66 | }, | ||
| 67 | { | ||
| 68 | prop: "zjh", | ||
| 69 | label: "证件号" | ||
| 70 | }, | ||
| 71 | { | ||
| 72 | prop: "dh", | ||
| 73 | label: "联系电话" | ||
| 74 | }, | ||
| 75 | { | ||
| 76 | prop: "frmc", | ||
| 77 | label: "法人" | ||
| 78 | }, | ||
| 79 | { | ||
| 80 | label: '操作', | ||
| 81 | render: (h, scope) => { | ||
| 82 | return ( | ||
| 83 | <div> | ||
| 84 | { | ||
| 85 | <el-button icon="el-icon-view" type="text" onClick={() => { this.handleView(scope.$index, scope.row) }}>查看</el-button> | ||
| 86 | } | ||
| 87 | </div> | ||
| 88 | ) | ||
| 89 | } | ||
| 90 | } | ||
| 91 | ], | ||
| 92 | column: this.qlrCommonTable | ||
| 93 | } | ||
| 94 | }, | ||
| 95 | watch: { | ||
| 96 | tableData: { | ||
| 97 | handler: function (val, oldVal) { | ||
| 98 | let that = this | ||
| 99 | if (val.length == 0 || !val) { | ||
| 100 | that.tableDataList = _.cloneDeep([{ | ||
| 101 | sqrmc: '', | ||
| 102 | dlrzjlx: '', | ||
| 103 | dlrzjh: '', | ||
| 104 | fr: '' | ||
| 105 | }]) | ||
| 106 | } else { | ||
| 107 | that.tableDataList = _.cloneDeep(val) | ||
| 108 | } | ||
| 109 | }, | ||
| 110 | immediate: true, | ||
| 111 | deep: true | ||
| 112 | }, | ||
| 113 | gyfs: { | ||
| 114 | handler (newVal, oldValue) { | ||
| 115 | let dataList = _.cloneDeep(this.qlrCommonTable) | ||
| 116 | if (newVal == '1') { | ||
| 117 | this.column = _.cloneDeep(dataList).slice(1, dataList.length) | ||
| 118 | } else if ((newVal == '2')) { | ||
| 119 | this.column = dataList | ||
| 120 | } else { | ||
| 121 | this.column = _.cloneDeep(dataList) | ||
| 122 | this.column.splice( | ||
| 123 | 2, 0, { | ||
| 124 | prop: "qlbl", | ||
| 125 | label: "份数" | ||
| 126 | }) | ||
| 127 | } | ||
| 128 | }, | ||
| 129 | immediate: true | ||
| 130 | } | ||
| 131 | }, | ||
| 132 | methods: { | ||
| 133 | /** | ||
| 134 | * @description: updateDetail | ||
| 135 | * @param {*} value | ||
| 136 | * @author: renchao | ||
| 137 | */ | ||
| 138 | updateDetail (value) { | ||
| 139 | this.tableDataList[this.dataIndex] = value | ||
| 140 | this.key++ | ||
| 141 | this.$emit('upDateQlrxxList', this.tableDataList) | ||
| 142 | }, | ||
| 143 | // 添加 | ||
| 144 | /** | ||
| 145 | * @description: 添加 | ||
| 146 | * @author: renchao | ||
| 147 | */ | ||
| 148 | handleAdd () { | ||
| 149 | this.dialog = true | ||
| 150 | }, | ||
| 151 | // 减 | ||
| 152 | /** | ||
| 153 | * @description: 减 | ||
| 154 | * @param {*} index | ||
| 155 | * @param {*} row | ||
| 156 | * @author: renchao | ||
| 157 | */ | ||
| 158 | handleMinus (index, row) { | ||
| 159 | this.tableData.splice(index, 1) | ||
| 160 | }, | ||
| 161 | // 身份证读取 | ||
| 162 | /** | ||
| 163 | * @description: 身份证读取 | ||
| 164 | * @author: renchao | ||
| 165 | */ | ||
| 166 | readClick () { }, | ||
| 167 | // 修改 | ||
| 168 | /** | ||
| 169 | * @description: 修改 | ||
| 170 | * @param {*} index | ||
| 171 | * @param {*} row | ||
| 172 | * @author: renchao | ||
| 173 | */ | ||
| 174 | handleEdit (index, row) { | ||
| 175 | console.log(row, 'rowrowrowrowrow'); | ||
| 176 | this.dataIndex = index | ||
| 177 | this.dialog = true | ||
| 178 | this.details = row | ||
| 179 | }, | ||
| 180 | /** | ||
| 181 | * @description: handleView | ||
| 182 | * @author: renchao | ||
| 183 | */ | ||
| 184 | handleView () { | ||
| 185 | this.dialog = true | ||
| 186 | } | ||
| 187 | } | ||
| 188 | } | ||
| 189 | </script> | ||
| 190 | <style scoped lang="scss"> | ||
| 191 | /deep/.el-table th { | ||
| 192 | height: 30px !important; | ||
| 193 | } | ||
| 194 | /deep/.el-table--small .el-table__cell { | ||
| 195 | padding: 5px; | ||
| 196 | } | ||
| 197 | </style> |
| 1 | <!-- | ||
| 2 | * @Description: | ||
| 3 | * @Autor: renchao | ||
| 4 | * @LastEditTime: 2023-09-27 08:51:13 | ||
| 5 | --> | ||
| 6 | <template> | ||
| 7 | <div class="from-clues"> | ||
| 8 | <div class="invalid-title"> | ||
| 9 | <i class="el-icon-question invalid-icon"></i> | ||
| 10 | <div class="invalid-body">您是否确定终止该业务办理?</div> | ||
| 11 | </div> | ||
| 12 | <div class="invalid-reson">退件原因:</div> | ||
| 13 | <el-input | ||
| 14 | v-model="stopMessage" | ||
| 15 | placeholder="请输入终止原因" | ||
| 16 | type="textarea" | ||
| 17 | :rows="4"></el-input> | ||
| 18 | <div style="overflow:hidden;text-align:center;margin-top:10px"> | ||
| 19 | <el-button @click="cancelBack">取消</el-button> | ||
| 20 | <el-button type="primary" @click="onSubmit">退件</el-button> | ||
| 21 | </div> | ||
| 22 | </div> | ||
| 23 | </template> | ||
| 24 | |||
| 25 | <script> | ||
| 26 | import { stopTask } from "@/api/workFlow.js"; | ||
| 27 | import { popupCacel } from "@/utils/popup.js"; | ||
| 28 | export default { | ||
| 29 | props: { | ||
| 30 | formData: { | ||
| 31 | type: Object, | ||
| 32 | default: {}, | ||
| 33 | }, | ||
| 34 | }, | ||
| 35 | data () { | ||
| 36 | return { | ||
| 37 | stopMessage: "", | ||
| 38 | }; | ||
| 39 | }, | ||
| 40 | methods: { | ||
| 41 | /** | ||
| 42 | * @description: onSubmit | ||
| 43 | * @author: renchao | ||
| 44 | */ | ||
| 45 | onSubmit () { | ||
| 46 | stopTask({ | ||
| 47 | bsmSlsq: this.formData.bsmSlsq, | ||
| 48 | bestepid: this.formData.bestepid, | ||
| 49 | stopMessage: this.stopMessage, | ||
| 50 | }).then((res) => { | ||
| 51 | this.$message.success("终止成功"); | ||
| 52 | setTimeout(() => { | ||
| 53 | // window.opener.location.reload(); //刷新父窗口 | ||
| 54 | if (window.opener && window.opener.getBpageList) { | ||
| 55 | window.opener.getBpageList(); | ||
| 56 | } else { | ||
| 57 | window.opener.frames[0].getBpageList(); | ||
| 58 | } | ||
| 59 | window.close(); | ||
| 60 | this.$emit("input", false); | ||
| 61 | }, 1000); | ||
| 62 | }); | ||
| 63 | }, | ||
| 64 | /** | ||
| 65 | * @description: closeDialog | ||
| 66 | * @author: renchao | ||
| 67 | */ | ||
| 68 | cancelBack () { | ||
| 69 | popupCacel(); | ||
| 70 | }, | ||
| 71 | }, | ||
| 72 | }; | ||
| 73 | </script> | ||
| 74 | <style scoped lang="scss"> | ||
| 75 | @import "~@/styles/mixin.scss"; | ||
| 76 | .invalid-title { | ||
| 77 | display: flex; | ||
| 78 | align-content: center; | ||
| 79 | |||
| 80 | .invalid-icon { | ||
| 81 | color: rgb(254, 148, 0); | ||
| 82 | font-size: 34px; | ||
| 83 | margin-right: 10px; | ||
| 84 | } | ||
| 85 | |||
| 86 | .invalid-body { | ||
| 87 | line-height: 40px; | ||
| 88 | margin-bottom: 10px; | ||
| 89 | } | ||
| 90 | } | ||
| 91 | |||
| 92 | .invalid-reson { | ||
| 93 | margin-bottom: 10px; | ||
| 94 | } | ||
| 95 | |||
| 96 | .dialog-footer { | ||
| 97 | margin-top: 10px; | ||
| 98 | display: flex; | ||
| 99 | justify-content: flex-end; | ||
| 100 | } | ||
| 101 | </style> |
| 1 | <template> | ||
| 2 | <div class="slxx swxx"> | ||
| 3 | <el-form | ||
| 4 | :model="ruleForm" | ||
| 5 | ref="ruleForm" | ||
| 6 | v-Loading="loading" | ||
| 7 | :label-position="flag ? 'top' : ''" | ||
| 8 | :inline="flag" | ||
| 9 | label-width="120px"> | ||
| 10 | <div class="slxx_con" :class="flag ? 'formMarginBot0' : ''"> | ||
| 11 | <div class="slxx_title title-block"> | ||
| 12 | 不动产信息 | ||
| 13 | <div class="triangle"></div> | ||
| 14 | </div> | ||
| 15 | <el-row :gutter="10"> | ||
| 16 | <el-col :span="8"> | ||
| 17 | <el-form-item label="不动产单元号:"> | ||
| 18 | <el-input disabled v-model="ruleForm.bdcdyh"></el-input> | ||
| 19 | </el-form-item> | ||
| 20 | </el-col> | ||
| 21 | <el-col :span="8"> | ||
| 22 | <el-form-item label="原产证号:"> | ||
| 23 | <el-input disabled v-model="ruleForm.yfczh"></el-input> | ||
| 24 | </el-form-item> | ||
| 25 | </el-col> | ||
| 26 | <el-col :span="8"> | ||
| 27 | <el-form-item label="面积(m3):"> | ||
| 28 | <el-input disabled v-model="ruleForm.mj"></el-input> | ||
| 29 | </el-form-item> | ||
| 30 | </el-col> | ||
| 31 | </el-row> | ||
| 32 | <el-row :gutter="10"> | ||
| 33 | <el-col :span="8"> | ||
| 34 | <el-form-item label="权利类型:"> | ||
| 35 | <el-input disabled v-model="ruleForm.qllxmc"></el-input> | ||
| 36 | </el-form-item> | ||
| 37 | </el-col> | ||
| 38 | <el-col :span="8"> | ||
| 39 | <el-form-item label="用途:"> | ||
| 40 | <el-input disabled v-model="ruleForm.yt"></el-input> | ||
| 41 | </el-form-item> | ||
| 42 | </el-col> | ||
| 43 | <el-col :span="8"> | ||
| 44 | <el-form-item label="坐落:"> | ||
| 45 | <el-input disabled v-model="ruleForm.zl"></el-input> | ||
| 46 | </el-form-item> | ||
| 47 | </el-col> | ||
| 48 | </el-row> | ||
| 49 | <div class="slxx_title title-block"> | ||
| 50 | 买方信息 | ||
| 51 | <div class="triangle"></div> | ||
| 52 | </div> | ||
| 53 | <lb-table :column="column" :pagination="false" :heightNumSetting="true" | ||
| 54 | :data="ruleForm.tableDataList"> | ||
| 55 | </lb-table> | ||
| 56 | <div class="slxx_title title-block"> | ||
| 57 | 卖方信息 | ||
| 58 | <div class="triangle"></div> | ||
| 59 | </div> | ||
| 60 | <lb-table :column="column1" :pagination="false" :heightNumSetting="true" | ||
| 61 | :data="ruleForm.tableDataList"> | ||
| 62 | </lb-table> | ||
| 63 | <div class="slxx_title title-block"> | ||
| 64 | 合同信息 | ||
| 65 | <div class="triangle"></div> | ||
| 66 | </div> | ||
| 67 | <el-row :gutter="10"> | ||
| 68 | <el-col :span="8"> | ||
| 69 | <el-form-item label="合同编号:"> | ||
| 70 | <el-input v-model="ruleForm.htbh"></el-input> | ||
| 71 | </el-form-item> | ||
| 72 | </el-col> | ||
| 73 | <el-col :span="8"> | ||
| 74 | <el-form-item label="合同金额(万元):"> | ||
| 75 | <el-input v-model="ruleForm.htje"></el-input> | ||
| 76 | </el-form-item> | ||
| 77 | </el-col> | ||
| 78 | <el-col :span="8"> | ||
| 79 | <el-form-item label="签订时间:"> | ||
| 80 | <el-date-picker | ||
| 81 | class="width100" | ||
| 82 | v-model="ruleForm.qdsj" | ||
| 83 | type="date" | ||
| 84 | placeholder="选择日期" | ||
| 85 | value-format="yyyy-MM-dd HH:mm:ss" | ||
| 86 | format="yyyy-MM-dd"> | ||
| 87 | </el-date-picker> | ||
| 88 | </el-form-item> | ||
| 89 | </el-col> | ||
| 90 | </el-row> | ||
| 91 | <div class="slxx_title title-block"> | ||
| 92 | 缴税信息 | ||
| 93 | <div class="triangle"></div> | ||
| 94 | </div> | ||
| 95 | <lb-table :column="column2" :pagination="false" :heightNumSetting="true" | ||
| 96 | :data="ruleForm.tableDataList"> | ||
| 97 | </lb-table> | ||
| 98 | </div> | ||
| 99 | <el-row class="btn" v-if="viewEdit"> | ||
| 100 | <el-form-item> | ||
| 101 | <el-button type="primary" @click="onSubmit">保存</el-button> | ||
| 102 | </el-form-item> | ||
| 103 | </el-row> | ||
| 104 | </el-form> | ||
| 105 | </div> | ||
| 106 | </template> | ||
| 107 | <script> | ||
| 108 | import { mapGetters } from "vuex"; | ||
| 109 | export default { | ||
| 110 | computed: { | ||
| 111 | ...mapGetters(["dictData", "flag"]), | ||
| 112 | }, | ||
| 113 | mounted () { | ||
| 114 | // this.loading = true | ||
| 115 | this.viewEdit = this.$parent.currentSelectTab.ableOperation; | ||
| 116 | this.propsParam = this.$attrs; | ||
| 117 | var formdata = new FormData(); | ||
| 118 | formdata.append("bsmSldy", this.propsParam.bsmSldy); | ||
| 119 | formdata.append("djlx", this.propsParam.djlx); | ||
| 120 | formdata.append("isEdit", this.viewEdit); | ||
| 121 | // Init(formdata).then((res) => { | ||
| 122 | // if (res.code === 200 && res.result) { | ||
| 123 | // } | ||
| 124 | // }); | ||
| 125 | }, | ||
| 126 | data () { | ||
| 127 | return { | ||
| 128 | loading: false, | ||
| 129 | //表单是否可操作 | ||
| 130 | viewEdit: false, | ||
| 131 | column: [ | ||
| 132 | { | ||
| 133 | prop: "qlrxm", | ||
| 134 | label: "权利人姓名" | ||
| 135 | }, | ||
| 136 | { | ||
| 137 | prop: "gyqk", | ||
| 138 | label: "共有情况" | ||
| 139 | }, | ||
| 140 | { | ||
| 141 | prop: "zjzl", | ||
| 142 | label: "身份证号种类" | ||
| 143 | }, | ||
| 144 | { | ||
| 145 | prop: "zjhm", | ||
| 146 | label: "证件号码" | ||
| 147 | }, | ||
| 148 | ], | ||
| 149 | column1: [{ | ||
| 150 | prop: "ywrxm", | ||
| 151 | label: "义务人姓名" | ||
| 152 | }, | ||
| 153 | { | ||
| 154 | prop: "zjzl", | ||
| 155 | label: "身份证号种类" | ||
| 156 | }, | ||
| 157 | { | ||
| 158 | prop: "zjhm", | ||
| 159 | label: "证件号码" | ||
| 160 | }], | ||
| 161 | column2: [{ | ||
| 162 | type: 'index', | ||
| 163 | label: "序号", | ||
| 164 | width: '50' | ||
| 165 | }, | ||
| 166 | { | ||
| 167 | prop: "nsr", | ||
| 168 | label: "纳税人" | ||
| 169 | }, | ||
| 170 | { | ||
| 171 | prop: "sz", | ||
| 172 | label: "税种" | ||
| 173 | }, | ||
| 174 | { | ||
| 175 | prop: "jsyj", | ||
| 176 | label: "计税依据" | ||
| 177 | }, | ||
| 178 | { | ||
| 179 | prop: "sl", | ||
| 180 | label: "税率" | ||
| 181 | }, | ||
| 182 | { | ||
| 183 | prop: "jsje", | ||
| 184 | label: "计税金额" | ||
| 185 | }], | ||
| 186 | ruleForm: { | ||
| 187 | tableDataList: [] | ||
| 188 | } | ||
| 189 | } | ||
| 190 | }, | ||
| 191 | methods: { | ||
| 192 | onSubmit () { } | ||
| 193 | } | ||
| 194 | } | ||
| 195 | </script> | ||
| 196 | <style scoped lang="scss"> | ||
| 197 | @import "~@/styles/public.scss"; | ||
| 198 | @import "~@/styles/slxx/slxx.scss"; | ||
| 199 | </style> |
| 1 | <!-- | ||
| 2 | * @Description: | ||
| 3 | * @Autor: renchao | ||
| 4 | * @LastEditTime: 2024-01-30 15:46:45 | ||
| 5 | --> | ||
| 6 | <template> | ||
| 7 | <div class="szxx"> | ||
| 8 | <el-card | ||
| 9 | :class="classJudge(item)" | ||
| 10 | v-for="(item, index) in tableData" | ||
| 11 | :key="index"> | ||
| 12 | <div slot="header" class="szxx_header"> | ||
| 13 | <span class="header_type">{{ | ||
| 14 | item.bdcqzlx == 1 ? "不动产权证书" : "不动产登记证明" | ||
| 15 | }}</span> | ||
| 16 | <div class="header_text">{{ item.bdcqzh }}</div> | ||
| 17 | </div> | ||
| 18 | <div class="szxx_body card_padding"> | ||
| 19 | <div class="text color_iray"> | ||
| 20 | <span>{{ item.qllx }}</span> | ||
| 21 | </div> | ||
| 22 | <div class="text color_red"> | ||
| 23 | <span>{{ item.qlr }}</span><span class="color_iray">({{ item.qllx }})</span> | ||
| 24 | </div> | ||
| 25 | <div class="text color_iray"> | ||
| 26 | <span>{{ item.gyqk }}</span> | ||
| 27 | </div> | ||
| 28 | <div class="text color_red"> | ||
| 29 | <span>{{ item.bdcdyh }}</span> | ||
| 30 | </div> | ||
| 31 | <div class="text color_iray"> | ||
| 32 | <span>{{ item.zl }}</span> | ||
| 33 | </div> | ||
| 34 | <div class="text color_red"> | ||
| 35 | <span>{{ item.yt }}</span> | ||
| 36 | </div> | ||
| 37 | <div class="text color_iray"> | ||
| 38 | <span>{{ item.mj }}</span> | ||
| 39 | </div> | ||
| 40 | <div class="text color_red"> | ||
| 41 | <span>{{ item.syqx }}</span> | ||
| 42 | </div> | ||
| 43 | <div class="text color_iray"> | ||
| 44 | <span>印刷序列号:{{ item.ysxlh }}</span> | ||
| 45 | </div> | ||
| 46 | </div> | ||
| 47 | <div class="card_padding" v-if="viewEdit"> | ||
| 48 | <div class="top_line middle_margin"></div> | ||
| 49 | <div class="text tac" v-if="item.ysxlh"> | ||
| 50 | <el-button | ||
| 51 | class="operation_button" | ||
| 52 | type="text" | ||
| 53 | @click="openInvalidDiglog(item)">再次打印({{ item.szcs }})</el-button> | ||
| 54 | <el-button | ||
| 55 | class="operation_button" | ||
| 56 | type="text" | ||
| 57 | @click="openRecordPop(item)">缮证记录</el-button> | ||
| 58 | </div> | ||
| 59 | <div class="text tac" v-else> | ||
| 60 | <el-button | ||
| 61 | class="operation_button" | ||
| 62 | type="text" | ||
| 63 | @click="openZsylDialog(item, 2)">证书打印({{ item.szcs }})</el-button> | ||
| 64 | <el-button | ||
| 65 | class="operation_button" | ||
| 66 | type="text" | ||
| 67 | @click="openRecordPop(item)">缮证记录</el-button> | ||
| 68 | </div> | ||
| 69 | </div> | ||
| 70 | </el-card> | ||
| 71 | |||
| 72 | <el-empty description="暂无数据" v-if="tableData.length == 0"></el-empty> | ||
| 73 | </div> | ||
| 74 | </template> | ||
| 75 | <script> | ||
| 76 | import { mapGetters } from "vuex"; | ||
| 77 | import store from "@/store/index.js"; | ||
| 78 | import { getSlsqBdcqzList } from "@/api/bdcqz.js"; | ||
| 79 | export default { | ||
| 80 | props: {}, | ||
| 81 | data () { | ||
| 82 | return { | ||
| 83 | //表单是否可操作 | ||
| 84 | viewEdit: false, | ||
| 85 | dialog: false, | ||
| 86 | tableData: [], | ||
| 87 | bdcqzlx: 1, | ||
| 88 | bdcqz: {}, | ||
| 89 | }; | ||
| 90 | }, | ||
| 91 | computed: { | ||
| 92 | ...mapGetters(["workFresh"]), | ||
| 93 | }, | ||
| 94 | watch: { | ||
| 95 | workFresh: { | ||
| 96 | handler (newVal, oldVal) { | ||
| 97 | if (newVal) this.list(); | ||
| 98 | }, | ||
| 99 | }, | ||
| 100 | }, | ||
| 101 | created () { | ||
| 102 | this.list(); | ||
| 103 | this.viewEdit = this.$parent.currentSelectTab.ableOperation; | ||
| 104 | }, | ||
| 105 | methods: { | ||
| 106 | /** | ||
| 107 | * @description: 初始化列表 | ||
| 108 | * @author: renchao | ||
| 109 | */ | ||
| 110 | list () { | ||
| 111 | return new Promise((resolve, reject) => { | ||
| 112 | var bsmSlsq = this.$route.query.bsmSlsq; | ||
| 113 | getSlsqBdcqzList({ bsmSlsq: bsmSlsq }).then((res) => { | ||
| 114 | resolve(res.code); | ||
| 115 | if (res.code === 200) { | ||
| 116 | this.tableData = res.result; | ||
| 117 | if (res.result) { | ||
| 118 | this.bdcqz = res.result[0]; | ||
| 119 | } | ||
| 120 | } | ||
| 121 | }); | ||
| 122 | }); | ||
| 123 | }, | ||
| 124 | /** | ||
| 125 | * @description: 打开证书预览弹窗 | ||
| 126 | * @param {*} item | ||
| 127 | * @param {*} type | ||
| 128 | * @author: renchao | ||
| 129 | */ | ||
| 130 | openZsylDialog (item, type) { | ||
| 131 | store.dispatch("user/reWorkFresh", false); | ||
| 132 | if (type == 1) { | ||
| 133 | this.$popupDialog( | ||
| 134 | "证书证明预览", | ||
| 135 | "workflow/components/dialog/zsyl", | ||
| 136 | { bdcqz: item, bsmSlsq: this.$route.query.bsmSlsq }, | ||
| 137 | '1230px', | ||
| 138 | true | ||
| 139 | ); | ||
| 140 | } else { | ||
| 141 | this.$popupDialog( | ||
| 142 | "证书证明打印", | ||
| 143 | "workflow/components/dialog/zsdy", | ||
| 144 | { ...item }, | ||
| 145 | "76%", | ||
| 146 | true | ||
| 147 | ); | ||
| 148 | } | ||
| 149 | }, | ||
| 150 | /** | ||
| 151 | * @description: 再次打印 | ||
| 152 | * @param {*} item | ||
| 153 | * @author: renchao | ||
| 154 | */ | ||
| 155 | openInvalidDiglog (item) { | ||
| 156 | this.$popupDialog( | ||
| 157 | "证书证明打印", | ||
| 158 | "workflow/components/dialog/zsdy", | ||
| 159 | { ...item }, | ||
| 160 | "76%", | ||
| 161 | true | ||
| 162 | ); | ||
| 163 | }, | ||
| 164 | /** | ||
| 165 | * @description: openRecordPop | ||
| 166 | * @param {*} item | ||
| 167 | * @author: renchao | ||
| 168 | */ | ||
| 169 | openRecordPop (item) { | ||
| 170 | this.$popupDialog( | ||
| 171 | "缮证记录", | ||
| 172 | "workflow/components/dialog/szRecord", | ||
| 173 | { bsmBdcqz: item.bsmBdcqz }, | ||
| 174 | "60%", | ||
| 175 | true | ||
| 176 | ); | ||
| 177 | }, | ||
| 178 | /** | ||
| 179 | * @description: classJudge 判断class | ||
| 180 | * @param {*} item | ||
| 181 | * @author: renchao | ||
| 182 | */ | ||
| 183 | classJudge (item) { | ||
| 184 | let className = "box-card"; | ||
| 185 | if (item.bdcqzlx == 1) { | ||
| 186 | className += " zs-card"; | ||
| 187 | } else { | ||
| 188 | className += " zm-card"; | ||
| 189 | } | ||
| 190 | if (item.szcs == 0) { | ||
| 191 | className += " no-print"; | ||
| 192 | } | ||
| 193 | return className; | ||
| 194 | }, | ||
| 195 | }, | ||
| 196 | }; | ||
| 197 | </script> | ||
| 198 | <style scoped lang="scss"> | ||
| 199 | @import "~@/styles/public.scss"; | ||
| 200 | .szxx { | ||
| 201 | box-sizing: border-box; | ||
| 202 | padding-right: 15px; | ||
| 203 | width: 100%; | ||
| 204 | height: 100%; | ||
| 205 | overflow-y: scroll; | ||
| 206 | padding-bottom: 55px; | ||
| 207 | |||
| 208 | .box-card { | ||
| 209 | float: left; | ||
| 210 | width: 350px; | ||
| 211 | margin: 10px; | ||
| 212 | box-shadow: none; | ||
| 213 | background-image: url("~@/image/zm-bg.png"); | ||
| 214 | background-size: 100% 100%; | ||
| 215 | border: 1px solid transparent; | ||
| 216 | /deep/ .el-card__header { | ||
| 217 | padding: 12px 66px; | ||
| 218 | background-size: auto; | ||
| 219 | border-bottom: 0; | ||
| 220 | position: relative; | ||
| 221 | } | ||
| 222 | .szxx_header { | ||
| 223 | color: #8b4534; | ||
| 224 | } | ||
| 225 | .szxx_body { | ||
| 226 | height: 330px; | ||
| 227 | } | ||
| 228 | } | ||
| 229 | .zs-card { | ||
| 230 | border: 1px solid #a6b0be; | ||
| 231 | background-image: none; | ||
| 232 | /deep/ .el-card__header { | ||
| 233 | background-image: url("~@/image/zs-red.png"); | ||
| 234 | .szxx_header { | ||
| 235 | color: #ffe47c; | ||
| 236 | } | ||
| 237 | } | ||
| 238 | .top_line { | ||
| 239 | border-top: 1px solid #d3dbe5; | ||
| 240 | width: 330px; | ||
| 241 | margin: 0 auto 10px; | ||
| 242 | } | ||
| 243 | } | ||
| 244 | .zm-card { | ||
| 245 | /deep/ .el-card__header { | ||
| 246 | &:after { | ||
| 247 | content: ""; | ||
| 248 | display: inline-block; | ||
| 249 | width: 330px; | ||
| 250 | height: 1px; | ||
| 251 | background-color: #b28676; | ||
| 252 | position: absolute; | ||
| 253 | left: 10px; | ||
| 254 | bottom: 0; | ||
| 255 | } | ||
| 256 | } | ||
| 257 | } | ||
| 258 | .zm-card.no-print { | ||
| 259 | background-image: url("~@/image/zm-gray.png"); | ||
| 260 | |||
| 261 | /deep/ .el-card__header { | ||
| 262 | &:after { | ||
| 263 | background-color: #6d7278; | ||
| 264 | } | ||
| 265 | } | ||
| 266 | .szxx_header { | ||
| 267 | color: #6d7278; | ||
| 268 | } | ||
| 269 | } | ||
| 270 | .zs-card.no-print { | ||
| 271 | /deep/ .el-card__header { | ||
| 272 | background-image: url("~@/image/zs-gray.png"); | ||
| 273 | .szxx_header { | ||
| 274 | color: #ffffff; | ||
| 275 | } | ||
| 276 | } | ||
| 277 | } | ||
| 278 | } | ||
| 279 | |||
| 280 | .szxx_header { | ||
| 281 | // color: #ffffff; | ||
| 282 | // font-weight: bolder; | ||
| 283 | font-size: 16px; | ||
| 284 | |||
| 285 | .header_type { | ||
| 286 | display: flex; | ||
| 287 | justify-content: center; | ||
| 288 | align-content: center; | ||
| 289 | } | ||
| 290 | |||
| 291 | .header_text { | ||
| 292 | text-align: center; | ||
| 293 | margin-top: 2px; | ||
| 294 | line-height: 22px; | ||
| 295 | } | ||
| 296 | } | ||
| 297 | |||
| 298 | .text { | ||
| 299 | margin-bottom: 8px; | ||
| 300 | text-align: left; | ||
| 301 | text-indent: 16px; | ||
| 302 | } | ||
| 303 | .text.tac { | ||
| 304 | text-align: center; | ||
| 305 | } | ||
| 306 | |||
| 307 | .color_iray { | ||
| 308 | color: #6d7278; | ||
| 309 | } | ||
| 310 | |||
| 311 | .color_red { | ||
| 312 | color: #ab0c0c; | ||
| 313 | } | ||
| 314 | |||
| 315 | .middle_margin { | ||
| 316 | margin-bottom: 10px; | ||
| 317 | } | ||
| 318 | |||
| 319 | .operation_button { | ||
| 320 | border: 1px solid #5c95e5; | ||
| 321 | padding: 5px; | ||
| 322 | text-align: center; | ||
| 323 | } | ||
| 324 | |||
| 325 | .card_padding { | ||
| 326 | padding-top: 8px; | ||
| 327 | font-size: 14px; | ||
| 328 | line-height: 22px; | ||
| 329 | } | ||
| 330 | /deep/.el-card__body { | ||
| 331 | padding: 0px; | ||
| 332 | } | ||
| 333 | </style> |
src/views/workflow/components/th.vue
deleted
100644 → 0
| 1 | <!-- | ||
| 2 | * @Description: | ||
| 3 | * @Autor: renchao | ||
| 4 | * @LastEditTime: 2023-08-02 14:24:20 | ||
| 5 | --> | ||
| 6 | <template> | ||
| 7 | <div class="from-clues"> | ||
| 8 | <!-- 表单部分 --> | ||
| 9 | <div class="from-clues-header"> | ||
| 10 | <div class="title">请选择要退回到的环节:</div> | ||
| 11 | <el-form ref="queryForm" label-width="90px"> | ||
| 12 | <ul style="margin-bottom: 15px"> | ||
| 13 | <li | ||
| 14 | v-for="(item, index) in dataList" | ||
| 15 | class="listDetail" | ||
| 16 | :key="index" | ||
| 17 | @click="changeSelectItem(item)"> | ||
| 18 | <p class="icon"> | ||
| 19 | <el-radio | ||
| 20 | v-model="selectActivity" | ||
| 21 | :label="item.activityId" | ||
| 22 | @change="changeSelectItem(item)"></el-radio> | ||
| 23 | </p> | ||
| 24 | <p>{{ item.activityName }}</p> | ||
| 25 | <p v-for="(child, childIndex) in item.assignee" :key="childIndex"> | ||
| 26 | {{ child.name }} | ||
| 27 | </p> | ||
| 28 | </li> | ||
| 29 | </ul> | ||
| 30 | <div class="title">退回意见:</div> | ||
| 31 | <el-form-item> | ||
| 32 | <el-input | ||
| 33 | class="textArea" | ||
| 34 | type="textarea" | ||
| 35 | v-model="outstepopinion" | ||
| 36 | placeholder="请输入退回意见"></el-input> | ||
| 37 | </el-form-item> | ||
| 38 | <el-form-item> | ||
| 39 | <el-button style="float:right" @click="cancelBack">取消</el-button> | ||
| 40 | <el-button type="primary" @click="onSubmit" style="float:right">退回</el-button> | ||
| 41 | </el-form-item> | ||
| 42 | </el-form> | ||
| 43 | </div> | ||
| 44 | </div> | ||
| 45 | </template> | ||
| 46 | |||
| 47 | <script> | ||
| 48 | |||
| 49 | import { getTaskBackNode, sendBackTask } from "@/api/workFlow.js" | ||
| 50 | import { popupCacel } from "@/utils/popup.js"; | ||
| 51 | |||
| 52 | export default { | ||
| 53 | props: { | ||
| 54 | formData: { | ||
| 55 | type: Object, | ||
| 56 | default: {}, | ||
| 57 | }, | ||
| 58 | }, | ||
| 59 | data () { | ||
| 60 | return { | ||
| 61 | selectActivity: "", | ||
| 62 | dataList: [], | ||
| 63 | outstepopinion: "", | ||
| 64 | selectItem: {}, | ||
| 65 | }; | ||
| 66 | }, | ||
| 67 | created () { | ||
| 68 | this.getBackNode(); | ||
| 69 | }, | ||
| 70 | methods: { | ||
| 71 | /** | ||
| 72 | * @description: onSubmit | ||
| 73 | * @author: renchao | ||
| 74 | */ | ||
| 75 | onSubmit () { | ||
| 76 | if (!this.outstepopinion) { | ||
| 77 | this.$message.error("请填写退回意见"); | ||
| 78 | } else { | ||
| 79 | sendBackTask({ | ||
| 80 | bsmSlsq: this.formData.bsmSlsq, | ||
| 81 | backNodeList: [this.selectItem], | ||
| 82 | message: this.outstepopinion | ||
| 83 | }).then((res) => { | ||
| 84 | if (res.code == 200) { | ||
| 85 | this.$message.success("退回成功"); | ||
| 86 | setTimeout(() => { | ||
| 87 | if (window.opener && window.opener.getBpageList) { | ||
| 88 | window.opener.getBpageList(); | ||
| 89 | } else { | ||
| 90 | window.opener.frames[0].getBpageList(); | ||
| 91 | } | ||
| 92 | window.close(); | ||
| 93 | this.$emit("input", false); | ||
| 94 | }, 1000); | ||
| 95 | } else { | ||
| 96 | this.$message.error(res.message); | ||
| 97 | } | ||
| 98 | }); | ||
| 99 | } | ||
| 100 | }, | ||
| 101 | /** | ||
| 102 | * @description: changeSelectItem | ||
| 103 | * @param {*} item | ||
| 104 | * @author: renchao | ||
| 105 | */ | ||
| 106 | changeSelectItem (item) { | ||
| 107 | this.selectItem = item; | ||
| 108 | this.selectActivity = item.activityId; | ||
| 109 | }, | ||
| 110 | //获取可回退环节信息 | ||
| 111 | /** | ||
| 112 | * @description: 获取可回退环节信息 | ||
| 113 | * @author: renchao | ||
| 114 | */ | ||
| 115 | getBackNode () { | ||
| 116 | getTaskBackNode(this.formData).then((res) => { | ||
| 117 | if (res.code == 200) { | ||
| 118 | this.dataList = res.result; | ||
| 119 | console.log("this.dataList", this.dataList); | ||
| 120 | if (res.result) { | ||
| 121 | this.selectActivity = res.result[0].activityId; | ||
| 122 | this.selectItem = res.result[0]; | ||
| 123 | } | ||
| 124 | } | ||
| 125 | }); | ||
| 126 | }, | ||
| 127 | |||
| 128 | /** | ||
| 129 | * @description: cancelBack | ||
| 130 | * @author: renchao | ||
| 131 | */ | ||
| 132 | cancelBack () { | ||
| 133 | popupCacel(); | ||
| 134 | } | ||
| 135 | } | ||
| 136 | } | ||
| 137 | </script> | ||
| 138 | <style scoped lang="scss"> | ||
| 139 | @import "~@/styles/mixin.scss"; | ||
| 140 | |||
| 141 | .listDetail { | ||
| 142 | display: flex; | ||
| 143 | align-items: center; | ||
| 144 | width: 100%; | ||
| 145 | |||
| 146 | p { | ||
| 147 | line-height: 30px; | ||
| 148 | height: 30px; | ||
| 149 | @include flex-center; | ||
| 150 | flex: 1; | ||
| 151 | width: 100%; | ||
| 152 | border: 1px solid rgb(233, 235, 237); | ||
| 153 | margin-top: -1px; | ||
| 154 | margin-left: -1px; | ||
| 155 | } | ||
| 156 | |||
| 157 | .icon { | ||
| 158 | flex: 0 0 60px; | ||
| 159 | } | ||
| 160 | } | ||
| 161 | |||
| 162 | .title { | ||
| 163 | margin-bottom: 10px; | ||
| 164 | } | ||
| 165 | |||
| 166 | .textArea { | ||
| 167 | /deep/.el-textarea__inner { | ||
| 168 | min-height: 90px !important; | ||
| 169 | } | ||
| 170 | } | ||
| 171 | /deep/.el-radio .el-radio__label { | ||
| 172 | display: none; | ||
| 173 | } | ||
| 174 | </style> |
src/views/workflow/components/zc.vue
deleted
100644 → 0
| 1 | <!-- | ||
| 2 | * @Description: | ||
| 3 | * @Autor: renchao | ||
| 4 | * @LastEditTime: 2024-01-19 16:43:43 | ||
| 5 | --> | ||
| 6 | <template> | ||
| 7 | <div class="from-clues"> | ||
| 8 | <!-- 表单部分 --> | ||
| 9 | <div class="from-clues-header"> | ||
| 10 | <el-form ref="queryForm" label-width="180px" v-if="this.formData.obj"> | ||
| 11 | <el-form-item label="下一环节名称:"> | ||
| 12 | {{ this.formData.obj.taskName }} | ||
| 13 | </el-form-item> | ||
| 14 | <el-form-item label="下一环节办理人:"> | ||
| 15 | {{ this.formData.obj.usernames.join(",") }} | ||
| 16 | </el-form-item> | ||
| 17 | </el-form> | ||
| 18 | <el-form ref="queryForm" label-width="180px" v-else> | ||
| 19 | <el-form-item label=""> | ||
| 20 | 此环节为流程最后环节,转出后流程将结束 | ||
| 21 | </el-form-item> | ||
| 22 | </el-form> | ||
| 23 | <div class="invalid-reson">审批意见:</div> | ||
| 24 | <el-input | ||
| 25 | class="opinion" | ||
| 26 | v-model="shyj" | ||
| 27 | placeholder="请输入审批意见" | ||
| 28 | type="textarea" | ||
| 29 | :rows="4"></el-input> | ||
| 30 | <!-- <el-button | ||
| 31 | class="opinion_btn" | ||
| 32 | @click="commonOpinion" | ||
| 33 | >常用意见</el-button | ||
| 34 | > --> | ||
| 35 | <el-button style="float: right" @click="cancelBack">取消转出</el-button> | ||
| 36 | <el-button type="primary" @click="submitForm" :loading="loading" style="float: right">确定转出</el-button> | ||
| 37 | </div> | ||
| 38 | </div> | ||
| 39 | </template> | ||
| 40 | |||
| 41 | <script> | ||
| 42 | import { completeTask, getNextLinkInfo } from "@/api/workFlow.js"; | ||
| 43 | import { popupCacel } from "@/utils/popup.js"; | ||
| 44 | import { mapGetters } from 'vuex' | ||
| 45 | export default { | ||
| 46 | components: {}, | ||
| 47 | |||
| 48 | props: { | ||
| 49 | formData: { | ||
| 50 | type: Object, | ||
| 51 | default: {}, | ||
| 52 | }, | ||
| 53 | }, | ||
| 54 | computed: { | ||
| 55 | ...mapGetters(['yjsqOptions']) | ||
| 56 | }, | ||
| 57 | data () { | ||
| 58 | return { | ||
| 59 | loading: false, | ||
| 60 | queryForm: {}, | ||
| 61 | shyj: "", | ||
| 62 | }; | ||
| 63 | }, | ||
| 64 | |||
| 65 | watch: { | ||
| 66 | // yjsqOptions: { | ||
| 67 | // handler (val) { | ||
| 68 | // if(val){ | ||
| 69 | // this.shyj = val | ||
| 70 | // } | ||
| 71 | |||
| 72 | // }, | ||
| 73 | // }, | ||
| 74 | }, | ||
| 75 | mounted () { | ||
| 76 | // this.queryForm= this.queryForm.obj | ||
| 77 | }, | ||
| 78 | methods: { | ||
| 79 | /** | ||
| 80 | * @description: submitForm | ||
| 81 | * @author: renchao | ||
| 82 | */ | ||
| 83 | commonOpinion () { | ||
| 84 | this.$popupDialog( | ||
| 85 | "常用意见", | ||
| 86 | "workflow/components/dialog/commonOpinion", | ||
| 87 | {}, | ||
| 88 | "70%", | ||
| 89 | true | ||
| 90 | ); | ||
| 91 | }, | ||
| 92 | submitForm () { | ||
| 93 | this.loading = true | ||
| 94 | this.queryForm = { | ||
| 95 | bsmSlsq: this.formData.bsmSlsq, | ||
| 96 | shyj: this.shyj, | ||
| 97 | stepform: JSON.stringify(this.formData.tabList), | ||
| 98 | }; | ||
| 99 | completeTask(this.queryForm).then((res) => { | ||
| 100 | this.loading = false | ||
| 101 | if (res.code === 200) { | ||
| 102 | this.$message.success("转件成功"); | ||
| 103 | popupCacel(); | ||
| 104 | setTimeout(() => { | ||
| 105 | window.close(); | ||
| 106 | this.$emit("input", false); | ||
| 107 | if (window.opener && window.opener.getBpageList) { | ||
| 108 | window.opener.getBpageList(); | ||
| 109 | } else { | ||
| 110 | window.opener.frames[0].getBpageList(); | ||
| 111 | } | ||
| 112 | }, 360); | ||
| 113 | } else { | ||
| 114 | this.$message.error(res.message); | ||
| 115 | } | ||
| 116 | }).catch(() => { | ||
| 117 | this.loading = false | ||
| 118 | }) | ||
| 119 | }, | ||
| 120 | |||
| 121 | /** | ||
| 122 | * @description: closeDialog | ||
| 123 | * @author: renchao | ||
| 124 | */ | ||
| 125 | cancelBack () { | ||
| 126 | popupCacel(); | ||
| 127 | }, | ||
| 128 | }, | ||
| 129 | }; | ||
| 130 | </script> | ||
| 131 | <style scoped lang="scss"> | ||
| 132 | @import "~@/styles/mixin.scss"; | ||
| 133 | .el-button { | ||
| 134 | margin-top: 20px; | ||
| 135 | margin-right: 10px; | ||
| 136 | } | ||
| 137 | |||
| 138 | .opinion { | ||
| 139 | position: relative; | ||
| 140 | font-size: 14px; | ||
| 141 | } | ||
| 142 | |||
| 143 | .opinion_btn { | ||
| 144 | position: absolute; | ||
| 145 | right: 35px; | ||
| 146 | bottom: 80px; | ||
| 147 | } | ||
| 148 | </style> |
| 1 | <!-- | ||
| 2 | * @Description: | ||
| 3 | * @Autor: renchao | ||
| 4 | * @LastEditTime: 2023-09-18 14:06:16 | ||
| 5 | --> | ||
| 6 | <template> | ||
| 7 | <div style="width:100%;height:100%;"> | ||
| 8 | <canvas id="mxcad" style="width:100%;height:100%;"> | ||
| 9 | </canvas> | ||
| 10 | </div> | ||
| 11 | </template> | ||
| 12 | <script> | ||
| 13 | import Mx from "mxdraw" | ||
| 14 | export default { | ||
| 15 | mounted () { | ||
| 16 | // 动态加载 js库核心代码 | ||
| 17 | Mx.loadCoreCode().then(() => { | ||
| 18 | // Mx.MxFun.setMxServer("ws://localhost:5090") // 开启socket通信 可编辑图纸 | ||
| 19 | // 创建控件对象 | ||
| 20 | Mx.MxFun.createMxObject({ | ||
| 21 | canvasId: "mxcad", // canvas元素的id | ||
| 22 | cadFile: "buf/hhhh.dwg", // http方式(预览): 加载public/demo文件夹下转换后的图纸 | ||
| 23 | callback: (mxDraw, { | ||
| 24 | canvas, | ||
| 25 | canvasParent | ||
| 26 | }) => { | ||
| 27 | // 可以拿到canvas元素和它的父级元素 | ||
| 28 | // 拿到图层数据 | ||
| 29 | mxDraw.addEvent('uiSetLayerData', (listLayer) => { | ||
| 30 | console.log(listLayer) | ||
| 31 | }) | ||
| 32 | }, | ||
| 33 | isNewFile: true // 是否新建文件 | ||
| 34 | }) | ||
| 35 | }) | ||
| 36 | }, | ||
| 37 | } | ||
| 38 | </script> | ||
| 39 | <style scoped lang="scss"> | ||
| 40 | #mxcad { | ||
| 41 | pointer-events: none; | ||
| 42 | } | ||
| 43 | </style> | ||
| ... | \ No newline at end of file | ... | \ No newline at end of file |
| 1 | /* | ||
| 2 | * @Description: | ||
| 3 | * @Autor: renchao | ||
| 4 | * @LastEditTime: 2023-10-11 10:59:12 | ||
| 5 | */ | ||
| 6 | import filter from '@/utils/filter.js' | ||
| 7 | let vm = null | ||
| 8 | |||
| 9 | const sendThis = (_this) => { | ||
| 10 | vm = _this | ||
| 11 | } | ||
| 12 | class data extends filter { | ||
| 13 | constructor() { | ||
| 14 | super() | ||
| 15 | } | ||
| 16 | columns () { | ||
| 17 | return { | ||
| 18 | //发证列表 | ||
| 19 | fzgrid: [ | ||
| 20 | { | ||
| 21 | label: '序号', | ||
| 22 | type: 'index', | ||
| 23 | width: '50' | ||
| 24 | }, | ||
| 25 | { | ||
| 26 | prop: "fzrmc", | ||
| 27 | label: "发证人" | ||
| 28 | }, | ||
| 29 | { | ||
| 30 | prop: "bdcqzlx", | ||
| 31 | label: "不动产权证类型", | ||
| 32 | width: '120', | ||
| 33 | render: (h, scope) => { | ||
| 34 | return ( | ||
| 35 | <div> | ||
| 36 | <span v-show={scope.row.bdcqzlx == '1'}>不动产权证书</span> | ||
| 37 | <span v-show={scope.row.bdcqzlx == '2'}>不动产登记证明</span> | ||
| 38 | </div> | ||
| 39 | ) | ||
| 40 | } | ||
| 41 | }, | ||
| 42 | { | ||
| 43 | label: "权利类型", | ||
| 44 | width: '100', | ||
| 45 | render: (h, scope) => { | ||
| 46 | return ( | ||
| 47 | <el-tooltip effect="dark" content={scope.row.qllx} placement="top" popper-class="tooltip-width "> | ||
| 48 | <span class="ellipsis-table"> {scope.row.qllx}</span> | ||
| 49 | </el-tooltip> | ||
| 50 | ) | ||
| 51 | } | ||
| 52 | }, | ||
| 53 | { | ||
| 54 | prop: "ysxlh", | ||
| 55 | label: "印刷序列号", | ||
| 56 | width: '100', | ||
| 57 | }, | ||
| 58 | { | ||
| 59 | prop: "bdcqzh", | ||
| 60 | label: "不动产权证号", | ||
| 61 | width: '190', | ||
| 62 | }, | ||
| 63 | { | ||
| 64 | label: "权利人", | ||
| 65 | minWidth: '120', | ||
| 66 | render: (h, scope) => { | ||
| 67 | return ( | ||
| 68 | <el-tooltip effect="dark" content={scope.row.qlr} placement="top" popper-class="tooltip-width "> | ||
| 69 | <span class="ellipsis-table"> {scope.row.qlr}</span> | ||
| 70 | </el-tooltip> | ||
| 71 | ) | ||
| 72 | } | ||
| 73 | }, | ||
| 74 | { | ||
| 75 | prop: "ywr", | ||
| 76 | label: "义务人" | ||
| 77 | }, | ||
| 78 | { | ||
| 79 | label: "面积(㎡)", | ||
| 80 | width: '100', | ||
| 81 | render: (h, scope) => { | ||
| 82 | return ( | ||
| 83 | <el-tooltip effect="dark" content={scope.row.mj} placement="top" popper-class="tooltip-width "> | ||
| 84 | <span class="ellipsis-table"> {scope.row.mj}</span> | ||
| 85 | </el-tooltip> | ||
| 86 | ) | ||
| 87 | } | ||
| 88 | }, | ||
| 89 | { | ||
| 90 | label: "坐落", | ||
| 91 | minWidth: '150', | ||
| 92 | render: (h, scope) => { | ||
| 93 | return ( | ||
| 94 | <el-tooltip effect="dark" content={scope.row.zl} placement="top" popper-class="tooltip-width "> | ||
| 95 | <span class="ellipsis-table"> {scope.row.zl}</span> | ||
| 96 | </el-tooltip> | ||
| 97 | ) | ||
| 98 | } | ||
| 99 | }, | ||
| 100 | { | ||
| 101 | prop: "fzsj", | ||
| 102 | label: "发证时间", | ||
| 103 | width: '140', | ||
| 104 | }, | ||
| 105 | { | ||
| 106 | prop: "lzrxm", | ||
| 107 | label: "领证人姓名" | ||
| 108 | }, | ||
| 109 | ], | ||
| 110 | //领证证列表 | ||
| 111 | lzgrid: [ | ||
| 112 | { | ||
| 113 | type: 'selection' | ||
| 114 | }, | ||
| 115 | { | ||
| 116 | label: '序号', | ||
| 117 | type: 'index', | ||
| 118 | width: '50' | ||
| 119 | }, | ||
| 120 | { | ||
| 121 | prop: "bdcqzlx", | ||
| 122 | label: "不动产权证类型", | ||
| 123 | width: '120', | ||
| 124 | render: (h, scope) => { | ||
| 125 | return ( | ||
| 126 | <div> | ||
| 127 | <span v-show={scope.row.bdcqzlx == '1'}>不动产权证书</span> | ||
| 128 | <span v-show={scope.row.bdcqzlx == '2'}>不动产登记证明</span> | ||
| 129 | </div> | ||
| 130 | ) | ||
| 131 | } | ||
| 132 | }, | ||
| 133 | { | ||
| 134 | prop: "qllx", | ||
| 135 | label: "权利类型" | ||
| 136 | }, | ||
| 137 | { | ||
| 138 | prop: "ysxlh", | ||
| 139 | label: "印刷序列号", | ||
| 140 | width: '100', | ||
| 141 | }, | ||
| 142 | { | ||
| 143 | prop: "bdcqzh", | ||
| 144 | label: "不动产权证号" | ||
| 145 | }, | ||
| 146 | { | ||
| 147 | prop: "qlr", | ||
| 148 | label: "权利人" | ||
| 149 | }, | ||
| 150 | { | ||
| 151 | prop: "ywr", | ||
| 152 | label: "义务人" | ||
| 153 | }, | ||
| 154 | { | ||
| 155 | label: "面积(㎡)", | ||
| 156 | width: '100', | ||
| 157 | render: (h, scope) => { | ||
| 158 | return ( | ||
| 159 | <el-tooltip effect="dark" content={scope.row.mj} placement="top" popper-class="tooltip-width "> | ||
| 160 | <span class="ellipsis-table"> {scope.row.mj}</span> | ||
| 161 | </el-tooltip> | ||
| 162 | ) | ||
| 163 | } | ||
| 164 | }, | ||
| 165 | { | ||
| 166 | prop: "zl", | ||
| 167 | label: "坐落" | ||
| 168 | } | ||
| 169 | ] | ||
| 170 | } | ||
| 171 | } | ||
| 172 | } | ||
| 173 | let datas = new data() | ||
| 174 | export { | ||
| 175 | datas, | ||
| 176 | sendThis | ||
| 177 | } |
| 1 | /* | ||
| 2 | * @Description: | ||
| 3 | * @Autor: renchao | ||
| 4 | * @LastEditTime: 2023-08-29 12:55:07 | ||
| 5 | */ | ||
| 6 | import filter from '@/utils/filter.js' | ||
| 7 | let vm = null | ||
| 8 | |||
| 9 | const sendThis = (_this) => { | ||
| 10 | vm = _this | ||
| 11 | } | ||
| 12 | class data extends filter { | ||
| 13 | constructor() { | ||
| 14 | super() | ||
| 15 | } | ||
| 16 | columns () { | ||
| 17 | return { | ||
| 18 | //发证列表 | ||
| 19 | fzgrid: [ | ||
| 20 | { | ||
| 21 | label: '序号', | ||
| 22 | type: 'index', | ||
| 23 | width: '50' | ||
| 24 | }, | ||
| 25 | { | ||
| 26 | prop: "fzrmc", | ||
| 27 | label: "发证人" | ||
| 28 | }, | ||
| 29 | { | ||
| 30 | prop: "bdcqzlx", | ||
| 31 | label: "不动产权证类型", | ||
| 32 | width: '130', | ||
| 33 | render: (h, scope) => { | ||
| 34 | return ( | ||
| 35 | <div> | ||
| 36 | <span v-show={scope.row.bdcqzlx == '1'}>不动产权证书</span> | ||
| 37 | <span v-show={scope.row.bdcqzlx == '2'}>不动产登记证明</span> | ||
| 38 | </div> | ||
| 39 | ) | ||
| 40 | } | ||
| 41 | }, | ||
| 42 | { | ||
| 43 | label: "权利类型", | ||
| 44 | width: '100', | ||
| 45 | render: (h, scope) => { | ||
| 46 | return ( | ||
| 47 | <el-tooltip effect="dark" content={scope.row.qllx} placement="top" popper-class="tooltip-width "> | ||
| 48 | <span class="ellipsis-table"> {scope.row.qllx}</span> | ||
| 49 | </el-tooltip> | ||
| 50 | ) | ||
| 51 | } | ||
| 52 | }, | ||
| 53 | { | ||
| 54 | label: "面积(㎡)", | ||
| 55 | width: '100', | ||
| 56 | render: (h, scope) => { | ||
| 57 | return ( | ||
| 58 | <el-tooltip effect="dark" content={scope.row.mj} placement="top" popper-class="tooltip-width "> | ||
| 59 | <span class="ellipsis-table"> {scope.row.mj}</span> | ||
| 60 | </el-tooltip> | ||
| 61 | ) | ||
| 62 | } | ||
| 63 | }, | ||
| 64 | { | ||
| 65 | prop: "fzsj", | ||
| 66 | label: "发证时间", | ||
| 67 | width: '140', | ||
| 68 | }, | ||
| 69 | { | ||
| 70 | prop: "lzrxm", | ||
| 71 | label: "领证人姓名" | ||
| 72 | }, | ||
| 73 | ], | ||
| 74 | } | ||
| 75 | } | ||
| 76 | } | ||
| 77 | let datas = new data() | ||
| 78 | export { | ||
| 79 | datas, | ||
| 80 | sendThis | ||
| 81 | } |
| 1 | /* | ||
| 2 | * @Description: | ||
| 3 | * @Autor: renchao | ||
| 4 | * @LastEditTime: 2023-05-17 10:39:03 | ||
| 5 | */ | ||
| 6 | import filter from '@/utils/filter.js' | ||
| 7 | let vm = null | ||
| 8 | |||
| 9 | const sendThis = (_this) => { | ||
| 10 | vm = _this | ||
| 11 | } | ||
| 12 | class data extends filter { | ||
| 13 | constructor() { | ||
| 14 | super() | ||
| 15 | } | ||
| 16 | columns () { | ||
| 17 | return [ | ||
| 18 | { | ||
| 19 | width:"50px", | ||
| 20 | label: '序号', | ||
| 21 | type: 'index', | ||
| 22 | render: (h, scope) => { | ||
| 23 | return ( | ||
| 24 | <div> | ||
| 25 | {scope.$index + 1} | ||
| 26 | </div> | ||
| 27 | ) | ||
| 28 | } | ||
| 29 | }, | ||
| 30 | { | ||
| 31 | prop: "szry", | ||
| 32 | label: "缮证人员", | ||
| 33 | }, | ||
| 34 | { | ||
| 35 | prop: "szsj", | ||
| 36 | label: "缮证时间", | ||
| 37 | }, | ||
| 38 | { | ||
| 39 | label: "是否作废", | ||
| 40 | render: (h, scope) => { | ||
| 41 | if (scope.row.sfzf == '0') { | ||
| 42 | return <div>否</div> | ||
| 43 | } else { | ||
| 44 | return <div>已作废</div> | ||
| 45 | } | ||
| 46 | } | ||
| 47 | }, | ||
| 48 | { | ||
| 49 | prop: "bz", | ||
| 50 | label: "备注信息", | ||
| 51 | }, | ||
| 52 | ] | ||
| 53 | } | ||
| 54 | } | ||
| 55 | let szxxdatas = new data() | ||
| 56 | export { | ||
| 57 | szxxdatas, | ||
| 58 | sendThis | ||
| 59 | } |
| ... | @@ -312,7 +312,7 @@ | ... | @@ -312,7 +312,7 @@ |
| 312 | this.$store.dispatch("user/reWorkFresh", false); | 312 | this.$store.dispatch("user/reWorkFresh", false); |
| 313 | this.$popupDialog( | 313 | this.$popupDialog( |
| 314 | "申请材料目录", | 314 | "申请材料目录", |
| 315 | "workflow/components/dialog/clxxDetailDialog", | 315 | "workflow/main/clxx/clxxDetailDialog", |
| 316 | { | 316 | { |
| 317 | data: this.tableData, | 317 | data: this.tableData, |
| 318 | bsmSldy: this.$parent.currentSelectProps.bsmSldy, | 318 | bsmSldy: this.$parent.currentSelectProps.bsmSldy, | ... | ... |
| ... | @@ -155,7 +155,7 @@ | ... | @@ -155,7 +155,7 @@ |
| 155 | }, | 155 | }, |
| 156 | hanldeAdd () { | 156 | hanldeAdd () { |
| 157 | let bsmBusiness = this.$route.query.bsmBusiness ? this.$route.query.bsmBusiness : window.currentSelect.bsmBusiness | 157 | let bsmBusiness = this.$route.query.bsmBusiness ? this.$route.query.bsmBusiness : window.currentSelect.bsmBusiness |
| 158 | this.$popupDialog('新增', 'workflow/components/dialog/xzsf', { bsmBusiness: bsmBusiness }, '50%', true) | 158 | this.$popupDialog('新增', 'workflow/main/sfxx/xzsf', { bsmBusiness: bsmBusiness }, '50%', true) |
| 159 | }, | 159 | }, |
| 160 | handleDelete (row) { | 160 | handleDelete (row) { |
| 161 | let that = this | 161 | let that = this | ... | ... |
| ... | @@ -285,7 +285,6 @@ | ... | @@ -285,7 +285,6 @@ |
| 285 | </div> | 285 | </div> |
| 286 | </template> | 286 | </template> |
| 287 | <script> | 287 | <script> |
| 288 | import sqrViewTable from "@/views/workflow/components/sqrViewTable"; | ||
| 289 | import { Init, saveData } from "@/api/workflow/cfdjFlow.js"; | 288 | import { Init, saveData } from "@/api/workflow/cfdjFlow.js"; |
| 290 | import { mapGetters } from "vuex"; | 289 | import { mapGetters } from "vuex"; |
| 291 | export default { | 290 | export default { |
| ... | @@ -341,7 +340,7 @@ | ... | @@ -341,7 +340,7 @@ |
| 341 | }); | 340 | }); |
| 342 | }, | 341 | }, |
| 343 | watch: {}, | 342 | watch: {}, |
| 344 | components: { sqrViewTable }, | 343 | components: { }, |
| 345 | props: { | 344 | props: { |
| 346 | flag: { | 345 | flag: { |
| 347 | type: Boolean, | 346 | type: Boolean, | ... | ... |
| 1 | <!-- | ||
| 2 | * @Description: 房屋多幢明细 | ||
| 3 | * @Autor: | ||
| 4 | * @LastEditTime: 2023-09-01 13:29:29 | ||
| 5 | --> | ||
| 6 | <template> | ||
| 7 | <div> | ||
| 8 | <el-table | ||
| 9 | :data="tableDataList" | ||
| 10 | border | ||
| 11 | :pagination="false" | ||
| 12 | :key="key" | ||
| 13 | :header-cell-style="{ 'text-align': 'center' }" | ||
| 14 | :heightNumSetting="true" | ||
| 15 | :minHeight="150" | ||
| 16 | height="150" | ||
| 17 | style="width: 100%"> | ||
| 18 | <el-table-column prop="index" width="50" :render-header="renderHeader"> | ||
| 19 | <template slot-scope="scope"> | ||
| 20 | <div style="text-align: center">{{ scope.$index + 1 }}</div> | ||
| 21 | </template> | ||
| 22 | </el-table-column> | ||
| 23 | <el-table-column prop="bdcdyh" label="不动产单元号" min-width="100"> | ||
| 24 | <template slot-scope="scope"> | ||
| 25 | <div style="text-align: center">{{ scope.row.bdcdyh }}</div> | ||
| 26 | </template> | ||
| 27 | </el-table-column> | ||
| 28 | <el-table-column prop="xmmc" label="项目名称" min-width="100"> | ||
| 29 | <template slot-scope="scope"> | ||
| 30 | <el-input | ||
| 31 | class="item" | ||
| 32 | :disabled="!ableOperation" | ||
| 33 | v-model="scope.row.xmmc" | ||
| 34 | placeholder="请输入内容" | ||
| 35 | @input="updaterow(scope.row)"> | ||
| 36 | </el-input> | ||
| 37 | </template> | ||
| 38 | </el-table-column> | ||
| 39 | <el-table-column prop="fwxz" label="房屋性质" min-width="100"> | ||
| 40 | <template slot-scope="scope"> | ||
| 41 | <treeselect | ||
| 42 | v-model="scope.row.fwxz" | ||
| 43 | :disabled="!ableOperation" | ||
| 44 | noOptionsText="暂无数据" | ||
| 45 | placeholder="" | ||
| 46 | :show-count="true" | ||
| 47 | :options="dictData['A19']" | ||
| 48 | :normalizer="normalizer" | ||
| 49 | :appendToBody="true" | ||
| 50 | z-index="9999" | ||
| 51 | @input="updaterow(scope.row)" /> | ||
| 52 | </template> | ||
| 53 | </el-table-column> | ||
| 54 | <el-table-column prop="ghyt" label="房屋用途" min-width="100"> | ||
| 55 | <template slot-scope="scope"> | ||
| 56 | <treeselect | ||
| 57 | v-model="scope.row.ghyt" | ||
| 58 | :disabled="!ableOperation" | ||
| 59 | noOptionsText="暂无数据" | ||
| 60 | placeholder="" | ||
| 61 | :show-count="true" | ||
| 62 | :options="dictData['A17']" | ||
| 63 | :normalizer="normalizer" | ||
| 64 | :appendToBody="true" | ||
| 65 | z-index="9999" | ||
| 66 | @input="updaterow(scope.row)" /> | ||
| 67 | </template> | ||
| 68 | </el-table-column> | ||
| 69 | <el-table-column prop="fwjg" label="房屋结构" min-width="100"> | ||
| 70 | <template slot-scope="scope"> | ||
| 71 | <treeselect | ||
| 72 | v-model="scope.row.fwjg" | ||
| 73 | :disabled="!ableOperation" | ||
| 74 | noOptionsText="暂无数据" | ||
| 75 | placeholder="" | ||
| 76 | :show-count="true" | ||
| 77 | :options="dictData['A46']" | ||
| 78 | :normalizer="normalizer" | ||
| 79 | :appendToBody="true" | ||
| 80 | z-index="9999" | ||
| 81 | @input="updaterow(scope.row)" /> | ||
| 82 | </template> | ||
| 83 | </el-table-column> | ||
| 84 | <el-table-column prop="jzmj" label="建筑面积" min-width="100"> | ||
| 85 | <template slot-scope="scope"> | ||
| 86 | <el-input | ||
| 87 | maxlength="12" | ||
| 88 | class="item" | ||
| 89 | :disabled="!ableOperation" | ||
| 90 | oninput="value = (value.match(/^\d*(\.?\d{0,2})/g)[0]) || null" | ||
| 91 | v-model="scope.row.jzmj" | ||
| 92 | placeholder="请输入内容" | ||
| 93 | @input="updaterow(scope.row)"> | ||
| 94 | </el-input> | ||
| 95 | </template> | ||
| 96 | </el-table-column> | ||
| 97 | <el-table-column prop="jgsj" label="竣工时间" min-width="100"> | ||
| 98 | <template slot-scope="scope"> | ||
| 99 | <el-date-picker | ||
| 100 | v-model="scope.row.jgsj" | ||
| 101 | type="date" | ||
| 102 | :disabled="!ableOperation" | ||
| 103 | placeholder="选择日期" | ||
| 104 | value-format="yyyy-MM-dd HH:mm:ss" | ||
| 105 | format="yyyy-MM-dd" | ||
| 106 | @input="updaterow(scope.row)"> | ||
| 107 | </el-date-picker> | ||
| 108 | </template> | ||
| 109 | </el-table-column> | ||
| 110 | <el-table-column prop="zcs" label="总层数" min-width="100"> | ||
| 111 | <template slot-scope="scope"> | ||
| 112 | <el-input | ||
| 113 | class="item" | ||
| 114 | :disabled="!ableOperation" | ||
| 115 | oninput="value = (value.match(/^\d*(\.?\d{0,2})/g)[0]) || null" | ||
| 116 | v-model="scope.row.zcs" | ||
| 117 | placeholder="请输入内容" | ||
| 118 | @input="updaterow(scope.row)"> | ||
| 119 | </el-input> | ||
| 120 | </template> | ||
| 121 | </el-table-column> | ||
| 122 | <el-table-column prop="zts" label="总套数" min-width="100"> | ||
| 123 | <template slot-scope="scope"> | ||
| 124 | <el-input | ||
| 125 | class="item" | ||
| 126 | :disabled="!ableOperation" | ||
| 127 | oninput="value = (value.match(/^\d*(\.?\d{0,2})/g)[0]) || null" | ||
| 128 | v-model="scope.row.zts" | ||
| 129 | placeholder="请输入内容" | ||
| 130 | @input="updaterow(scope.row)"> | ||
| 131 | </el-input> | ||
| 132 | </template> | ||
| 133 | </el-table-column> | ||
| 134 | </el-table> | ||
| 135 | </div> | ||
| 136 | </template> | ||
| 137 | <script> | ||
| 138 | import { mapGetters } from "vuex"; | ||
| 139 | |||
| 140 | export default { | ||
| 141 | computed: { | ||
| 142 | ...mapGetters(["dictData"]), | ||
| 143 | }, | ||
| 144 | props: { | ||
| 145 | tableData: { | ||
| 146 | type: Array, | ||
| 147 | default: function () { | ||
| 148 | return []; | ||
| 149 | }, | ||
| 150 | }, | ||
| 151 | ableOperation: { | ||
| 152 | type: Boolean, | ||
| 153 | default: false, | ||
| 154 | }, | ||
| 155 | |||
| 156 | }, | ||
| 157 | data () { | ||
| 158 | return { | ||
| 159 | // 键名转换,方法默认是label和children进行树状渲染 | ||
| 160 | key: 0, | ||
| 161 | tableDataList: [], | ||
| 162 | normalizer (node) { | ||
| 163 | if (node.children == null || node.children == "null") { | ||
| 164 | delete node.children; | ||
| 165 | } | ||
| 166 | return { | ||
| 167 | id: node.dcode, | ||
| 168 | label: node.dname, | ||
| 169 | children: node.children, | ||
| 170 | }; | ||
| 171 | }, | ||
| 172 | }; | ||
| 173 | }, | ||
| 174 | mounted () { | ||
| 175 | }, | ||
| 176 | watch: { | ||
| 177 | tableData: { | ||
| 178 | handler: function (val, oldVal) { | ||
| 179 | let that = this; | ||
| 180 | this.$nextTick(() => { | ||
| 181 | if (val.length == 0 || !val) { | ||
| 182 | that.tableDataList = _.cloneDeep([ | ||
| 183 | { | ||
| 184 | yt: null, | ||
| 185 | qssj: "", | ||
| 186 | jssj: "", | ||
| 187 | tdsyqx: "", | ||
| 188 | }, | ||
| 189 | ]); | ||
| 190 | } else { | ||
| 191 | that.tableDataList = _.cloneDeep(val); | ||
| 192 | } | ||
| 193 | }); | ||
| 194 | }, | ||
| 195 | immediate: true, | ||
| 196 | deep: true, | ||
| 197 | }, | ||
| 198 | }, | ||
| 199 | methods: { | ||
| 200 | /** | ||
| 201 | * @description: renderHeader | ||
| 202 | * @author: renchao | ||
| 203 | */ | ||
| 204 | renderHeader () { | ||
| 205 | return ( | ||
| 206 | <div> | ||
| 207 | {"序号"} | ||
| 208 | </div> | ||
| 209 | ); | ||
| 210 | }, | ||
| 211 | updaterow (a) { | ||
| 212 | this.$emit("updateFdcwxmList", this.tableDataList); | ||
| 213 | } | ||
| 214 | } | ||
| 215 | } | ||
| 216 | </script> | ||
| 217 | <style scoped lang="scss"> | ||
| 218 | .el-input { | ||
| 219 | border: none !important; | ||
| 220 | } | ||
| 221 | |||
| 222 | /deep/ .el-table__row { | ||
| 223 | border: none !important; | ||
| 224 | } | ||
| 225 | |||
| 226 | .el-date-editor.el-input { | ||
| 227 | width: 100%; | ||
| 228 | } | ||
| 229 | |||
| 230 | /deep/ .el-table th { | ||
| 231 | height: 30px !important; | ||
| 232 | } | ||
| 233 | </style> | ||
| 234 |
src/views/workflow/components/fdcqxmTable.vue
→
src/views/workflow/main/slsqxx/fdcq1/fdcqxmTable.vue
File moved
| ... | @@ -296,7 +296,7 @@ | ... | @@ -296,7 +296,7 @@ |
| 296 | import ywmix from "@/views/ywbl/mixin/index"; | 296 | import ywmix from "@/views/ywbl/mixin/index"; |
| 297 | import qlrCommonTable from "@/views/workflow/components/qlrCommonTable"; | 297 | import qlrCommonTable from "@/views/workflow/components/qlrCommonTable"; |
| 298 | import ywrCommonTable from "@/views/workflow/components/ywrCommonTable"; | 298 | import ywrCommonTable from "@/views/workflow/components/ywrCommonTable"; |
| 299 | import fdcqxmTable from "../commonTable/fdcqxmTable"; | 299 | import fdcqxmTable from "./fdcqxmTable"; |
| 300 | import tdytTable from "@/views/workflow/components/tdytTable"; | 300 | import tdytTable from "@/views/workflow/components/tdytTable"; |
| 301 | import { Init, saveData } from "@/api/workflow/fwsyq1Flow.js"; | 301 | import { Init, saveData } from "@/api/workflow/fwsyq1Flow.js"; |
| 302 | import { mapGetters } from "vuex"; | 302 | import { mapGetters } from "vuex"; | ... | ... |
| ... | @@ -73,77 +73,195 @@ | ... | @@ -73,77 +73,195 @@ |
| 73 | </div> | 73 | </div> |
| 74 | <el-row :gutter="10" v-if="ruleForm.qlxx"> | 74 | <el-row :gutter="10" v-if="ruleForm.qlxx"> |
| 75 | <el-col :span="8"> | 75 | <el-col :span="8"> |
| 76 | <el-form-item label="原不动产权证号:"> | ||
| 77 | <el-input disabled v-model="ruleForm.sldy.ybdcqzsh"></el-input> | ||
| 78 | </el-form-item> | ||
| 79 | </el-col> | ||
| 80 | <el-col :span="8"> | ||
| 76 | <el-form-item label="不动产单元号:"> | 81 | <el-form-item label="不动产单元号:"> |
| 77 | <el-input disabled v-model="ruleForm.qlxx.bdcdyh"></el-input> | 82 | <el-input disabled v-model="ruleForm.sldy.bdcdyh"></el-input> |
| 78 | </el-form-item> | 83 | </el-form-item> |
| 79 | </el-col> | 84 | </el-col> |
| 80 | <el-col :span="16"> | 85 | <el-col :span="8"> |
| 81 | <el-form-item label="坐落:"> | 86 | <el-form-item label="坐落:"> |
| 82 | <el-input disabled v-model="ruleForm.sldy.zl"></el-input> | 87 | <el-input maxlength="100" :disabled="!viewEdit" v-model="ruleForm.sldy.zl"></el-input> |
| 83 | </el-form-item> | 88 | </el-form-item> |
| 84 | </el-col> | 89 | </el-col> |
| 85 | </el-row> | 90 | </el-row> |
| 86 | <el-row :gutter="10" v-if="ruleForm.fdcq2"> | 91 | <el-row :gutter="10" v-if="ruleForm.fdcq2"> |
| 87 | <el-col :span="8"> | 92 | <el-col :span="8"> |
| 88 | <el-form-item label="土地用途:"> | 93 | <el-form-item label="宗地面积:"> |
| 89 | <el-input disabled v-model="ruleForm.fdcq2.yt"></el-input> | 94 | <div class="flex"> |
| 95 | <el-input :disabled="!viewEdit" v-model="ruleForm.zdjbxx.zdmj"></el-input> | ||
| 96 | <el-select | ||
| 97 | disabled | ||
| 98 | v-model="ruleForm.zdjbxx.mjdw" | ||
| 99 | style="width: 68px"> | ||
| 100 | <el-option | ||
| 101 | v-for="item in dictData['A7']" | ||
| 102 | :key="item.dcode" | ||
| 103 | :label="item.dname" | ||
| 104 | :value="item.dcode"> | ||
| 105 | </el-option> | ||
| 106 | </el-select> | ||
| 107 | </div> | ||
| 90 | </el-form-item> | 108 | </el-form-item> |
| 91 | </el-col> | 109 | </el-col> |
| 92 | <el-col :span="8"> | 110 | <el-col :span="8"> |
| 93 | <el-form-item label="土地使用起止时间:"> | 111 | <el-form-item label="土地使用权人:"> |
| 94 | <el-input disabled v-model="ruleForm.fdcq2.tdsyqzsj"></el-input> | 112 | <el-input :disabled="!viewEdit" v-model="ruleForm.fdcq2.tdsyqr"></el-input> |
| 95 | </el-form-item> | 113 | </el-form-item> |
| 96 | </el-col> | 114 | </el-col> |
| 97 | <el-col :span="8"> | 115 | <el-col :span="8"> |
| 98 | <el-form-item label="土地使用期限:"> | 116 | <el-form-item label="土地性质:"> |
| 99 | <el-input disabled v-model="ruleForm.fdcq2.tdsyqx"></el-input> | 117 | <treeselect |
| 118 | :disabled="!viewEdit" | ||
| 119 | v-model="ruleForm.fdcq2.tdxz" | ||
| 120 | noOptionsText="暂无数据" | ||
| 121 | placeholder="" | ||
| 122 | :normalizer="normalizer" | ||
| 123 | :default-expand-level="1" | ||
| 124 | :show-count="true" | ||
| 125 | :options="dictData['A9']" /> | ||
| 100 | </el-form-item> | 126 | </el-form-item> |
| 101 | </el-col> | 127 | </el-col> |
| 102 | </el-row> | 128 | </el-row> |
| 103 | <el-row :gutter="10" v-if="ruleForm.qlxx"> | 129 | <el-row :gutter="10" v-if="ruleForm.qlxx"> |
| 104 | <el-col :span="8"> | 130 | <el-col :span="8"> |
| 105 | <el-form-item label="规划用途名称:"> | 131 | <el-form-item label="独用土地面积:"> |
| 106 | <el-input disabled v-model="ruleForm.zdjbxx.ghytmc"></el-input> | 132 | <div class="flex"> |
| 133 | <el-input | ||
| 134 | maxlength="12" | ||
| 135 | v-model="ruleForm.fdcq2.dytdmj" | ||
| 136 | :disabled="!viewEdit" | ||
| 137 | oninput="value = (value.match(/^\d*(\.?\d{0,2})/g)[0]) || null"></el-input> | ||
| 138 | <el-select disabled v-model="mjdw" style="width: 68px"> | ||
| 139 | <el-option | ||
| 140 | v-for="item in dictData['A7']" | ||
| 141 | :key="item.dcode" | ||
| 142 | :label="item.dname" | ||
| 143 | :value="item.dcode"> | ||
| 144 | </el-option> | ||
| 145 | </el-select> | ||
| 146 | </div> | ||
| 147 | </el-form-item> | ||
| 148 | </el-col> | ||
| 149 | <el-col :span="8"> | ||
| 150 | <el-form-item label="分摊土地面积:"> | ||
| 151 | <div class="flex"> | ||
| 152 | <el-input | ||
| 153 | maxlength="12" | ||
| 154 | v-model="ruleForm.fdcq2.fttdmj" | ||
| 155 | :disabled="!viewEdit" | ||
| 156 | oninput="value = (value.match(/^\d*(\.?\d{0,2})/g)[0]) || null"></el-input> | ||
| 157 | <el-select disabled v-model="mjdw" style="width: 68px"> | ||
| 158 | <el-option | ||
| 159 | v-for="item in dictData['A7']" | ||
| 160 | :key="item.dcode" | ||
| 161 | :label="item.dname" | ||
| 162 | :value="item.dcode"> | ||
| 163 | </el-option> | ||
| 164 | </el-select> | ||
| 165 | </div> | ||
| 107 | </el-form-item> | 166 | </el-form-item> |
| 108 | </el-col> | 167 | </el-col> |
| 109 | <el-col :span="8"> | 168 | <el-col :span="8"> |
| 110 | <el-form-item label="房屋性质:"> | 169 | <el-form-item label="房屋性质:"> |
| 111 | <el-input disabled v-model="ruleForm.fdcq2.fwxzmc"></el-input> | 170 | <el-select v-model="ruleForm.fdcq2.fwxz" :disabled="!viewEdit"> |
| 171 | <el-option | ||
| 172 | v-for="item in dictData['A19']" | ||
| 173 | :key="item.dcode" | ||
| 174 | :label="item.dname" | ||
| 175 | :value="item.dcode"> | ||
| 176 | </el-option> | ||
| 177 | </el-select> | ||
| 178 | </el-form-item> | ||
| 179 | </el-col> | ||
| 180 | </el-row> | ||
| 181 | <el-row :gutter="10" v-if="ruleForm.qlxx"> | ||
| 182 | <el-col :span="8"> | ||
| 183 | <el-form-item label="房屋用途:"> | ||
| 184 | <treeselect | ||
| 185 | v-model="ruleForm.fdcq2.ghyt" | ||
| 186 | :disabled="!viewEdit" | ||
| 187 | noOptionsText="" | ||
| 188 | placeholder="" | ||
| 189 | :normalizer="normalizer" | ||
| 190 | :show-count="true" | ||
| 191 | :options="dictData['A17']" /> | ||
| 112 | </el-form-item> | 192 | </el-form-item> |
| 113 | </el-col> | 193 | </el-col> |
| 114 | <el-col :span="8"> | 194 | <el-col :span="8"> |
| 115 | <el-form-item label="房屋结构:"> | 195 | <el-form-item label="房屋结构:"> |
| 116 | <el-input disabled v-model="ruleForm.fdcq2.fwjgmc"></el-input> | 196 | <el-select v-model="ruleForm.fdcq2.fwjg" :disabled="!viewEdit"> |
| 197 | <el-option | ||
| 198 | v-for="item in dictData['A46']" | ||
| 199 | :key="item.dcode" | ||
| 200 | :label="item.dname" | ||
| 201 | :value="item.dcode"> | ||
| 202 | </el-option> | ||
| 203 | </el-select> | ||
| 204 | </el-form-item> | ||
| 205 | </el-col> | ||
| 206 | <el-col :span="8"> | ||
| 207 | <el-form-item label="竣工时间:"> | ||
| 208 | <el-date-picker | ||
| 209 | v-model="ruleForm.fdcq2.jgsj" | ||
| 210 | class="width100" | ||
| 211 | type="date" | ||
| 212 | placeholder="选择日期" | ||
| 213 | value-format="yyyy-MM-dd" | ||
| 214 | :disabled="!viewEdit"></el-date-picker> | ||
| 117 | </el-form-item> | 215 | </el-form-item> |
| 118 | </el-col> | 216 | </el-col> |
| 119 | </el-row> | 217 | </el-row> |
| 120 | <el-row :gutter="10" v-if="ruleForm.fdcq2"> | 218 | <el-row :gutter="10" v-if="ruleForm.qlxx"> |
| 121 | <el-col :span="8"> | 219 | <el-col :span="8"> |
| 122 | <el-form-item label="所在层:"> | 220 | <el-form-item label="所在层:"> |
| 123 | <el-input disabled v-model="ruleForm.fdcq2.szc"></el-input> | 221 | <el-input |
| 222 | maxlength="20" | ||
| 223 | v-model="ruleForm.fdcq2.szc" | ||
| 224 | :disabled="!viewEdit"></el-input> | ||
| 124 | </el-form-item> | 225 | </el-form-item> |
| 125 | </el-col> | 226 | </el-col> |
| 126 | <el-col :span="8"> | 227 | <el-col :span="8"> |
| 127 | <el-form-item label="总层数:"> | 228 | <el-form-item label="总层数:"> |
| 128 | <el-input | 229 | <el-input |
| 129 | disabled | 230 | maxlength="4" |
| 231 | :disabled="!viewEdit" | ||
| 130 | v-model.number="ruleForm.fdcq2.zcs" | 232 | v-model.number="ruleForm.fdcq2.zcs" |
| 131 | oninput="value=value.replace(/[^0-9]/g,'')"></el-input> | 233 | oninput="value=value.replace(/[^0-9]/g,'')"></el-input> |
| 132 | </el-form-item> | 234 | </el-form-item> |
| 133 | </el-col> | 235 | </el-col> |
| 134 | <el-col :span="8"> | 236 | <el-col :span="8"> |
| 135 | <el-form-item label="竣工时间:"> | 237 | <el-form-item label="房地产交易价格:"> |
| 136 | <el-input disabled v-model="ruleForm.fdcq2.jgsj"></el-input> | 238 | <div class="flex"> |
| 239 | <el-input | ||
| 240 | maxlength="11" | ||
| 241 | v-model="ruleForm.fdcq2.fdcjyjg" | ||
| 242 | style="width: 500%" | ||
| 243 | :disabled="!viewEdit" | ||
| 244 | oninput="value = (value.match(/^\d*(\.?\d{0,2})/g)[0]) || null"></el-input> | ||
| 245 | <el-select v-model="ruleForm.fdcq2.jedw" :disabled="!viewEdit"> | ||
| 246 | <el-option | ||
| 247 | v-for="item in dictData['A57']" | ||
| 248 | :key="item.dcode" | ||
| 249 | :label="item.dname" | ||
| 250 | :value="item.dcode"> | ||
| 251 | </el-option> | ||
| 252 | </el-select> | ||
| 253 | </div> | ||
| 137 | </el-form-item> | 254 | </el-form-item> |
| 138 | </el-col> | 255 | </el-col> |
| 139 | </el-row> | 256 | </el-row> |
| 140 | <el-row :gutter="10" v-if="ruleForm.qlxx"> | 257 | <el-row :gutter="10" v-if="ruleForm.fdcq2"> |
| 141 | <el-col :span="8"> | 258 | <el-col :span="8"> |
| 142 | <el-form-item label="建筑面积:"> | 259 | <el-form-item label="建筑面积:"> |
| 143 | <div class="flex"> | 260 | <div class="flex"> |
| 144 | <el-input | 261 | <el-input |
| 145 | disabled | 262 | maxlength="12" |
| 146 | v-model="ruleForm.qlxx.mj" | 263 | v-model="ruleForm.fdcq2.jzmj" |
| 264 | :disabled="!viewEdit" | ||
| 147 | oninput="value = (value.match(/^\d*(\.?\d{0,2})/g)[0]) || null"></el-input> | 265 | oninput="value = (value.match(/^\d*(\.?\d{0,2})/g)[0]) || null"></el-input> |
| 148 | <el-select disabled v-model="mjdw" style="width: 68px"> | 266 | <el-select disabled v-model="mjdw" style="width: 68px"> |
| 149 | <el-option | 267 | <el-option |
| ... | @@ -160,8 +278,9 @@ | ... | @@ -160,8 +278,9 @@ |
| 160 | <el-form-item label="专有建筑面积:"> | 278 | <el-form-item label="专有建筑面积:"> |
| 161 | <div class="flex"> | 279 | <div class="flex"> |
| 162 | <el-input | 280 | <el-input |
| 163 | disabled | 281 | maxlength="12" |
| 164 | v-model="ruleForm.fdcq2.zyjzmj" | 282 | v-model="ruleForm.fdcq2.zyjzmj" |
| 283 | :disabled="!viewEdit" | ||
| 165 | oninput="value = (value.match(/^\d*(\.?\d{0,2})/g)[0]) || null"></el-input> | 284 | oninput="value = (value.match(/^\d*(\.?\d{0,2})/g)[0]) || null"></el-input> |
| 166 | <el-select disabled v-model="mjdw" style="width: 68px"> | 285 | <el-select disabled v-model="mjdw" style="width: 68px"> |
| 167 | <el-option | 286 | <el-option |
| ... | @@ -178,8 +297,9 @@ | ... | @@ -178,8 +297,9 @@ |
| 178 | <el-form-item label="分摊建筑面积:"> | 297 | <el-form-item label="分摊建筑面积:"> |
| 179 | <div class="flex"> | 298 | <div class="flex"> |
| 180 | <el-input | 299 | <el-input |
| 181 | disabled | 300 | maxlength="12" |
| 182 | v-model="ruleForm.fdcq2.ftjzmj" | 301 | v-model="ruleForm.fdcq2.ftjzmj" |
| 302 | :disabled="!viewEdit" | ||
| 183 | oninput="value = (value.match(/^\d*(\.?\d{0,2})/g)[0]) || null"></el-input> | 303 | oninput="value = (value.match(/^\d*(\.?\d{0,2})/g)[0]) || null"></el-input> |
| 184 | <el-select disabled v-model="mjdw" style="width: 68px"> | 304 | <el-select disabled v-model="mjdw" style="width: 68px"> |
| 185 | <el-option | 305 | <el-option |
| ... | @@ -193,6 +313,18 @@ | ... | @@ -193,6 +313,18 @@ |
| 193 | </el-form-item> | 313 | </el-form-item> |
| 194 | </el-col> | 314 | </el-col> |
| 195 | </el-row> | 315 | </el-row> |
| 316 | <el-row :gutter="10"> | ||
| 317 | <el-col :span="24"> | ||
| 318 | <el-form-item label="附记:"> | ||
| 319 | <el-input | ||
| 320 | v-model="ruleForm.fdcq2.fj" | ||
| 321 | type="textarea" | ||
| 322 | maxlength="500" | ||
| 323 | show-word-limit | ||
| 324 | :disabled="!viewEdit"></el-input> | ||
| 325 | </el-form-item> | ||
| 326 | </el-col> | ||
| 327 | </el-row> | ||
| 196 | <div class="slxx_title title-block"> | 328 | <div class="slxx_title title-block"> |
| 197 | 土地用途 | 329 | 土地用途 |
| 198 | <div class="triangle"></div> | 330 | <div class="triangle"></div> |
| ... | @@ -334,6 +466,16 @@ | ... | @@ -334,6 +466,16 @@ |
| 334 | }, | 466 | }, |
| 335 | data () { | 467 | data () { |
| 336 | return { | 468 | return { |
| 469 | normalizer (node) { | ||
| 470 | if (node.children == null || node.children == "null") { | ||
| 471 | delete node.children; | ||
| 472 | } | ||
| 473 | return { | ||
| 474 | id: node.dcode, | ||
| 475 | label: node.dname, | ||
| 476 | children: node.children, | ||
| 477 | }; | ||
| 478 | }, | ||
| 337 | isSave: true, | 479 | isSave: true, |
| 338 | loading: false, | 480 | loading: false, |
| 339 | mjdw: "1", | 481 | mjdw: "1", | ... | ... |
File moved
File moved
| ... | @@ -330,7 +330,7 @@ | ... | @@ -330,7 +330,7 @@ |
| 330 | import ywmix from "@/views/ywbl/mixin/index"; | 330 | import ywmix from "@/views/ywbl/mixin/index"; |
| 331 | import { Init, saveData } from "@/api/workflow/nydsyqFlow.js"; | 331 | import { Init, saveData } from "@/api/workflow/nydsyqFlow.js"; |
| 332 | import qlrCommonTable from "@/views/workflow/components/qlrCommonTable"; | 332 | import qlrCommonTable from "@/views/workflow/components/qlrCommonTable"; |
| 333 | import JtcyTable from "@/views/workflow/components/JtcyTable"; | 333 | import JtcyTable from "./JtcyTable"; |
| 334 | export default { | 334 | export default { |
| 335 | mixins: [ywmix], | 335 | mixins: [ywmix], |
| 336 | mounted () { | 336 | mounted () { | ... | ... |
| ... | @@ -11,7 +11,7 @@ | ... | @@ -11,7 +11,7 @@ |
| 11 | import { mapGetters } from 'vuex' | 11 | import { mapGetters } from 'vuex' |
| 12 | import { getSzRecordList } from "@/api/bdcqz.js"; | 12 | import { getSzRecordList } from "@/api/bdcqz.js"; |
| 13 | import table from "@/utils/mixin/table"; | 13 | import table from "@/utils/mixin/table"; |
| 14 | import { szxxdatas } from "../../javascript/szxxdata"; | 14 | import { szxxdatas } from "./szxxdata"; |
| 15 | export default { | 15 | export default { |
| 16 | components: { | 16 | components: { |
| 17 | 17 | ... | ... |
src/views/workflow/top/receipt/cfhzd.vue
0 → 100644
| 1 | <!-- | ||
| 2 | * @Description: | ||
| 3 | * @Autor: miaofang | ||
| 4 | * @LastEditTime: 2023-07-19 09:52:42 | ||
| 5 | --> | ||
| 6 | <template> | ||
| 7 | <div class="fm" id="boxaaa"> | ||
| 8 | <div class="title">不动产登记簿</div> | ||
| 9 | <div class="title">(回执)</div> | ||
| 10 | <p class="bian"> | ||
| 11 | 编号: <span>{{ Receiptdata.sldyList[0].ybdcqzsh||"" }}</span> | ||
| 12 | </p> | ||
| 13 | <div class="texts"> | ||
| 14 | <p class="jsjg">{{ Receiptdata.cfdjList[0].cfjg }}:</p> | ||
| 15 | <p class="concent"> | ||
| 16 | <span>{{ sj }}</span> ,你院协助执行通知书订单号为:<font>{{ | ||
| 17 | Receiptdata.qlxxList[0].ywh||"" | ||
| 18 | }}</font | ||
| 19 | >收悉,具体执行情况如下。 | ||
| 20 | </p> | ||
| 21 | </div> | ||
| 22 | |||
| 23 | <p class="bian">{{ Receiptdata.user.organizationName }}</p> | ||
| 24 | <p class="bian">{{ sj }}(盖章)</p> | ||
| 25 | <table class="xxTable"> | ||
| 26 | <tr> | ||
| 27 | <td>序号</td> | ||
| 28 | <td>坐落</td> | ||
| 29 | <td>控制反馈</td> | ||
| 30 | <td>控制措施</td> | ||
| 31 | </tr> | ||
| 32 | <tr v-for="(item, index) in Receiptdata.sldyList" :key="index"> | ||
| 33 | <td>{{ index + 1 }}</td> | ||
| 34 | <td>{{ item.zl }}</td> | ||
| 35 | <td>已控</td> | ||
| 36 | <td>{{ item.djlxmc }}</td> | ||
| 37 | </tr> | ||
| 38 | </table> | ||
| 39 | </div> | ||
| 40 | </template> | ||
| 41 | |||
| 42 | |||
| 43 | <script> | ||
| 44 | import { BatchInit } from "@/api/workflow/cfdjFlow.js"; | ||
| 45 | export default { | ||
| 46 | props: { | ||
| 47 | Receiptdata: { | ||
| 48 | type: Object, | ||
| 49 | default: {}, | ||
| 50 | }, | ||
| 51 | }, | ||
| 52 | data() { | ||
| 53 | return { | ||
| 54 | sj: "", | ||
| 55 | data:false | ||
| 56 | }; | ||
| 57 | }, | ||
| 58 | mounted() { | ||
| 59 | this.loadData(); | ||
| 60 | }, | ||
| 61 | watch: { | ||
| 62 | Receiptdata: { | ||
| 63 | handler(newValue, oldValue) { | ||
| 64 | this.$nextTick(() => { | ||
| 65 | this.Receiptdata = newValue; | ||
| 66 | this.loadData(); | ||
| 67 | }); | ||
| 68 | }, | ||
| 69 | }, | ||
| 70 | }, | ||
| 71 | methods: { | ||
| 72 | openPrint () { | ||
| 73 | // 获取打印回执数据 | ||
| 74 | var formdata = new FormData(); | ||
| 75 | formdata.append("bsmSldy", this.currentSelectProps.bsmSldy); | ||
| 76 | formdata.append("bsmSlsq", this.$route.query.bsmSlsq); | ||
| 77 | formdata.append("djlx", this.currentSelectProps.djlx); | ||
| 78 | BatchInit(formdata).then((res) => { | ||
| 79 | if (res.code === 200 && res.result) { | ||
| 80 | this.Receiptdata = res.result | ||
| 81 | this.shows = true | ||
| 82 | setTimeout(() => { | ||
| 83 | this.prinsss() | ||
| 84 | }, 100) | ||
| 85 | } else { | ||
| 86 | this.$message.error(res.message) | ||
| 87 | } | ||
| 88 | }) | ||
| 89 | }, | ||
| 90 | /** | ||
| 91 | * @description: loadData | ||
| 92 | * @author: miaofang | ||
| 93 | */ | ||
| 94 | loadData() { | ||
| 95 | let dateTime = new Date(this.Receiptdata.slsq.slsj); | ||
| 96 | let y = dateTime.getFullYear(); | ||
| 97 | let m = dateTime.getMonth() + 1; | ||
| 98 | m = m < 10 ? "0" + m : m; | ||
| 99 | let d = dateTime.getDate(); | ||
| 100 | d = d < 10 ? "0" + d : d; | ||
| 101 | let h = dateTime.getHours(); | ||
| 102 | h = h < 10 ? "0" + h : h; | ||
| 103 | let M = dateTime.getMinutes(); | ||
| 104 | M = M < 10 ? "0" + M : M; | ||
| 105 | let s = dateTime.getSeconds(); | ||
| 106 | s = s < 10 ? "0" + s : s; | ||
| 107 | this.sj = y + "年" + m + "月" + d + "日"; | ||
| 108 | }, | ||
| 109 | }, | ||
| 110 | }; | ||
| 111 | </script> | ||
| 112 | |||
| 113 | <style lang="scss" scoped> | ||
| 114 | #boxaaa{ | ||
| 115 | font { | ||
| 116 | border-bottom: 1px solid #000; | ||
| 117 | display: inline-block; | ||
| 118 | padding: 0 15px; | ||
| 119 | line-height: 16px; | ||
| 120 | } | ||
| 121 | |||
| 122 | .title { | ||
| 123 | height: 60px; | ||
| 124 | display: flex; | ||
| 125 | font-size: 32px; | ||
| 126 | color: #000; | ||
| 127 | justify-content: center; | ||
| 128 | align-items: center; | ||
| 129 | } | ||
| 130 | .bian { | ||
| 131 | text-align: right; | ||
| 132 | } | ||
| 133 | .texts{ | ||
| 134 | margin-top: 40px; | ||
| 135 | margin-bottom: 40px; | ||
| 136 | |||
| 137 | } | ||
| 138 | .jsjg { | ||
| 139 | text-align: left; | ||
| 140 | } | ||
| 141 | .concent { | ||
| 142 | width: 100%; | ||
| 143 | |||
| 144 | line-height: 40px; | ||
| 145 | text-align: left; | ||
| 146 | text-indent: 2em; | ||
| 147 | } | ||
| 148 | p { | ||
| 149 | font-family: serif; | ||
| 150 | } | ||
| 151 | .xxTable { | ||
| 152 | |||
| 153 | width: 100%; | ||
| 154 | border-collapse: collapse; | ||
| 155 | font-family: serif; | ||
| 156 | margin-top: 20px; | ||
| 157 | |||
| 158 | tr td { | ||
| 159 | border: 1px solid #000; | ||
| 160 | text-align: center; | ||
| 161 | height: 40px; | ||
| 162 | line-height: 17px; | ||
| 163 | font-size: 13px; | ||
| 164 | min-width: 80px; | ||
| 165 | z-index: 1; | ||
| 166 | min-width: 80px; | ||
| 167 | padding: 5px; | ||
| 168 | } | ||
| 169 | } | ||
| 170 | } | ||
| 171 | .fm { | ||
| 172 | background: #fff; | ||
| 173 | font-size: 18px; | ||
| 174 | margin: auto; | ||
| 175 | } | ||
| 176 | |||
| 177 | </style> |
| ... | @@ -117,17 +117,14 @@ | ... | @@ -117,17 +117,14 @@ |
| 117 | import ordinaryMenu from "./components/leftmenu/ordinaryMenu.vue"; | 117 | import ordinaryMenu from "./components/leftmenu/ordinaryMenu.vue"; |
| 118 | // 引入左侧菜单 | 118 | // 引入左侧菜单 |
| 119 | import segmentMenu from "./components/leftmenu/segmentMenu.vue"; | 119 | import segmentMenu from "./components/leftmenu/segmentMenu.vue"; |
| 120 | // 回执单 | ||
| 121 | import receipt from "./components/receipt.vue"; | ||
| 122 | import selectBdc from "@/views/ywbl/ywsq/selectBdc.vue"; | 120 | import selectBdc from "@/views/ywbl/ywsq/selectBdc.vue"; |
| 123 | import { BatchInit } from "@/api/workflow/cfdjFlow.js"; | 121 | |
| 124 | export default { | 122 | export default { |
| 125 | components: { | 123 | components: { |
| 126 | selectBdc, | 124 | selectBdc, |
| 127 | NoticeBar, | 125 | NoticeBar, |
| 128 | ordinaryMenu, | 126 | ordinaryMenu, |
| 129 | segmentMenu, | 127 | segmentMenu |
| 130 | receipt, | ||
| 131 | }, | 128 | }, |
| 132 | mixins: [WorkFlow, publicFlow], | 129 | mixins: [WorkFlow, publicFlow], |
| 133 | data () { | 130 | data () { |
| ... | @@ -176,24 +173,6 @@ | ... | @@ -176,24 +173,6 @@ |
| 176 | window.removeEventListener("unload", (e) => this.unloadHandler(e)); | 173 | window.removeEventListener("unload", (e) => this.unloadHandler(e)); |
| 177 | }, | 174 | }, |
| 178 | methods: { | 175 | methods: { |
| 179 | openPrint () { | ||
| 180 | // 获取打印回执数据 | ||
| 181 | var formdata = new FormData(); | ||
| 182 | formdata.append("bsmSldy", this.currentSelectProps.bsmSldy); | ||
| 183 | formdata.append("bsmSlsq", this.$route.query.bsmSlsq); | ||
| 184 | formdata.append("djlx", this.currentSelectProps.djlx); | ||
| 185 | BatchInit(formdata).then((res) => { | ||
| 186 | if (res.code === 200 && res.result) { | ||
| 187 | this.Receiptdata = res.result | ||
| 188 | this.shows = true | ||
| 189 | setTimeout(() => { | ||
| 190 | this.prinsss() | ||
| 191 | }, 100) | ||
| 192 | } else { | ||
| 193 | this.$message.error(res.message) | ||
| 194 | } | ||
| 195 | }) | ||
| 196 | }, | ||
| 197 | prinsss () { | 176 | prinsss () { |
| 198 | printJS({ | 177 | printJS({ |
| 199 | printable: "boxaaa", // // 文档来源:pdf或图像的url,html元素的id或json数据的对象 | 178 | printable: "boxaaa", // // 文档来源:pdf或图像的url,html元素的id或json数据的对象 | ... | ... |
| 1 | <!-- | ||
| 2 | * @Description: | ||
| 3 | * @Autor: renchao | ||
| 4 | * @LastEditTime: 2024-02-01 09:54:12 | ||
| 5 | --> | ||
| 6 | <template> | ||
| 7 | <div class="slxx"> | ||
| 8 | <el-form :model="ruleForm" :rules="rules" ref="ruleForm" :label-position="flagTop" :inline="flag" | ||
| 9 | label-width="120px"> | ||
| 10 | <div class="slxx_con"> | ||
| 11 | <div class="slxx_title title-block"> | ||
| 12 | 申请业务信息 | ||
| 13 | <div class="triangle"></div> | ||
| 14 | </div> | ||
| 15 | <el-row :gutter="10"> | ||
| 16 | <el-col :span="8"> | ||
| 17 | <el-form-item :class="flag ? 'marginBot0' : ''" label="业务号:"> | ||
| 18 | <el-input disabled v-model="ruleForm.flow.ywh"></el-input> | ||
| 19 | </el-form-item> | ||
| 20 | </el-col> | ||
| 21 | <el-col :span="8"> | ||
| 22 | <el-form-item :class="flag ? 'marginBot0' : ''" label="受理人员:"> | ||
| 23 | <el-input disabled v-model="ruleForm.slsq.slry"></el-input> | ||
| 24 | </el-form-item> | ||
| 25 | </el-col> | ||
| 26 | <el-col :span="8"> | ||
| 27 | <el-form-item :class="flag ? 'marginBot0' : ''" label="受理时间:"> | ||
| 28 | <el-input disabled v-model="ruleForm.slsq.slsj"></el-input> | ||
| 29 | </el-form-item> | ||
| 30 | </el-col> | ||
| 31 | </el-row> | ||
| 32 | <el-row :gutter="10"> | ||
| 33 | <el-col :span="8"> | ||
| 34 | <el-form-item :class="flag ? 'marginBot0' : ''" label="权利类型:"> | ||
| 35 | <el-select disabled v-model="ruleForm.sldyList[0].qllx" filterable clearable placeholder="请选择权利类型"> | ||
| 36 | <el-option v-for="item in dictData['A8']" :key="item.dcode" :label="item.dname" :value="item.dcode"> | ||
| 37 | </el-option> | ||
| 38 | </el-select> | ||
| 39 | </el-form-item> | ||
| 40 | </el-col> | ||
| 41 | <el-col :span="8"> | ||
| 42 | <el-form-item :class="flag ? 'marginBot0' : ''" label="登记类型:"> | ||
| 43 | <el-select disabled v-model="ruleForm.sldyList[0].djlx" filterable clearable placeholder="请选择登记类型"> | ||
| 44 | <el-option v-for="item in dictData['A21']" :key="item.dcode" :label="item.dname" :value="item.dcode"> | ||
| 45 | </el-option> | ||
| 46 | </el-select> | ||
| 47 | </el-form-item> | ||
| 48 | </el-col> | ||
| 49 | <el-col :span="8"> | ||
| 50 | <el-form-item :class="flag ? 'marginBot0' : ''" label="登记情形:"> | ||
| 51 | <el-input disabled v-model="ruleForm.slsq.djqxmc"></el-input> | ||
| 52 | </el-form-item> | ||
| 53 | </el-col> | ||
| 54 | </el-row> | ||
| 55 | <div class="slxx_title title-block" v-if="ruleForm.slsq.djywbm.includes('400')"> | ||
| 56 | 解封信息列表({{ ruleForm.cfdjDetailList.length }} 个) | ||
| 57 | <div class="triangle"></div> | ||
| 58 | <cfdjTable :tableData="ruleForm.cfdjDetailList" /> | ||
| 59 | </div> | ||
| 60 | <div class="slxx_title title-block" v-else> | ||
| 61 | 查封不动产列表({{ ruleForm.ztQlxxList.length }} 个) | ||
| 62 | <div class="triangle"></div> | ||
| 63 | <cfBdcdyTable :tableData="ruleForm.ztQlxxList" /> | ||
| 64 | </div> | ||
| 65 | <div class="slxx_title title-block" v-if="!ruleForm.slsq.djywbm.includes('400')"> | ||
| 66 | 批量查封信息 | ||
| 67 | <div class="triangle"></div> | ||
| 68 | </div> | ||
| 69 | <el-row :gutter="10" v-if="!ruleForm.slsq.djywbm.includes('400')"> | ||
| 70 | <el-col :span="8"> | ||
| 71 | <el-form-item :class="flag ? 'marginBot0' : ''" label="原告:"> | ||
| 72 | <el-input v-model="ruleForm.cfdj.yg" :disabled="!ableOperation|| isJfOperation"></el-input> | ||
| 73 | </el-form-item> | ||
| 74 | </el-col> | ||
| 75 | <el-col :span="8"> | ||
| 76 | <el-form-item :class="flag ? 'marginBot0' : ''" label="查封文号:" > | ||
| 77 | <el-input v-model="ruleForm.cfdj.cfwh" :disabled="!ableOperation|| isJfOperation"></el-input> | ||
| 78 | </el-form-item> | ||
| 79 | </el-col> | ||
| 80 | <el-col :span="8"> | ||
| 81 | <el-form-item :class="flag ? 'marginBot0' : ''" label="查封机关:"> | ||
| 82 | <el-input v-model="ruleForm.cfdj.cfjg" :disabled="!ableOperation|| isJfOperation"></el-input> | ||
| 83 | </el-form-item> | ||
| 84 | </el-col> | ||
| 85 | </el-row> | ||
| 86 | <el-row :gutter="10" v-if="!ruleForm.slsq.djywbm.includes('400')"> | ||
| 87 | <el-col :span="8"> | ||
| 88 | <el-form-item :class="flag ? 'marginBot0' : ''" label="查封期限:"> | ||
| 89 | <el-input v-model="ruleForm.cfdj.cfqx" :disabled="!ableOperation|| isJfOperation"></el-input> | ||
| 90 | </el-form-item> | ||
| 91 | </el-col> | ||
| 92 | <el-col :span="8"> | ||
| 93 | <el-form-item :class="flag ? 'marginBot0' : ''" label="查封起始时间:"> | ||
| 94 | <el-date-picker v-model="ruleForm.cfdj.cfqssj" class="width100" type="date" placeholder="选择日期" | ||
| 95 | value-format="yyyy-MM-dd" :disabled="!ableOperation|| isJfOperation"></el-date-picker> | ||
| 96 | </el-form-item> | ||
| 97 | </el-col> | ||
| 98 | <el-col :span="8"> | ||
| 99 | <el-form-item :class="flag ? 'marginBot0' : ''" label="查封结束时间:"> | ||
| 100 | <el-date-picker v-model="ruleForm.cfdj.cfjssj" class="width100" | ||
| 101 | :disabled="!ableOperation|| isJfOperation" type="date" placeholder="选择日期" | ||
| 102 | value-format="yyyy-MM-dd"></el-date-picker> | ||
| 103 | </el-form-item> | ||
| 104 | </el-col> | ||
| 105 | </el-row> | ||
| 106 | <el-row :gutter="10" v-if="!ruleForm.slsq.djywbm.includes('400')"> | ||
| 107 | <el-col :span="8"> | ||
| 108 | <el-form-item :class="flag ? 'marginBot0' : ''" label="查封文件:"> | ||
| 109 | <el-input v-model="ruleForm.cfdj.cfwj" :disabled="!ableOperation|| isJfOperation"></el-input> | ||
| 110 | </el-form-item> | ||
| 111 | </el-col> | ||
| 112 | <el-col :span="16"> | ||
| 113 | <el-form-item :class="flag ? 'marginBot0' : ''" label="查封范围:"> | ||
| 114 | <el-input v-model="ruleForm.cfdj.cffw" :disabled="!ableOperation|| isJfOperation"></el-input> | ||
| 115 | </el-form-item> | ||
| 116 | </el-col> | ||
| 117 | </el-row> | ||
| 118 | <el-row :gutter="10" v-if="!ruleForm.slsq.djywbm.includes('400')"> | ||
| 119 | <el-col> | ||
| 120 | <el-form-item :class="flag ? 'marginBot0' : ''" label="附记:"> | ||
| 121 | <el-input class="textArea" type="textarea" v-model="ruleForm.cfdj.fj" | ||
| 122 | :disabled="!ableOperation|| isJfOperation"></el-input> | ||
| 123 | </el-form-item> | ||
| 124 | </el-col> | ||
| 125 | </el-row> | ||
| 126 | <el-row :gutter="10" v-if="!ruleForm.slsq.djywbm.includes('400')"> | ||
| 127 | <el-col> | ||
| 128 | <el-form-item :class="flag ? 'marginBot0' : ''" label="登记原因:" prop="cfdj.djyy"> | ||
| 129 | <el-input class="textArea" type="textarea" v-model="ruleForm.cfdj.djyy" | ||
| 130 | :disabled="!ableOperation|| isJfOperation"></el-input> | ||
| 131 | </el-form-item> | ||
| 132 | </el-col> | ||
| 133 | </el-row> | ||
| 134 | <div v-if="propsParam.djlx == '400'"> | ||
| 135 | <div class="slxx_title title-block"> | ||
| 136 | 解封信息 | ||
| 137 | <div class="triangle"></div> | ||
| 138 | </div> | ||
| 139 | <el-row :gutter="10"> | ||
| 140 | <el-col :span="8"> | ||
| 141 | <el-form-item :class="flag ? 'marginBot0' : ''" label="解封机关:"> | ||
| 142 | <el-input v-model="ruleForm.cfdj.jfjg" :disabled="!ableOperation"></el-input> | ||
| 143 | </el-form-item> | ||
| 144 | </el-col> | ||
| 145 | <el-col :span="8"> | ||
| 146 | <el-form-item :class="flag ? 'marginBot0' : ''" label="解封文件:"> | ||
| 147 | <el-input v-model="ruleForm.cfdj.jfwj" :disabled="!ableOperation"></el-input> | ||
| 148 | </el-form-item> | ||
| 149 | </el-col> | ||
| 150 | <el-col :span="8"> | ||
| 151 | <el-form-item :class="flag ? 'marginBot0' : ''" label="解封文号:"> | ||
| 152 | <el-input v-model="ruleForm.cfdj.jfwh" :disabled="!ableOperation"></el-input> | ||
| 153 | </el-form-item> | ||
| 154 | </el-col> | ||
| 155 | </el-row> | ||
| 156 | </div> | ||
| 157 | </div> | ||
| 158 | <el-row class="btn" v-if="ableOperation"> | ||
| 159 | <el-button type="primary" @click="onSubmit">保存</el-button> | ||
| 160 | </el-row> | ||
| 161 | </el-form> | ||
| 162 | </div> | ||
| 163 | </template> | ||
| 164 | <script> | ||
| 165 | import cfBdcdyTable from "@/views/workflow/components/cfBdcdyTable"; | ||
| 166 | import cfdjTable from "@/views/workflow/components/cfdjTable"; | ||
| 167 | import { BatchInit, batchSaveData } from "@/api/workflow/cfdjFlow.js"; | ||
| 168 | import { mapGetters } from "vuex"; | ||
| 169 | export default { | ||
| 170 | data () { | ||
| 171 | return { | ||
| 172 | //表单是否可操作 | ||
| 173 | ableOperation: true, | ||
| 174 | disabled: true, | ||
| 175 | flagTop: this.flag ? "top" : "", | ||
| 176 | rules: { | ||
| 177 | 'cfdj.djyy': [ | ||
| 178 | { required: true, message: '请输入登记原因', trigger: 'blur' } | ||
| 179 | ] | ||
| 180 | }, | ||
| 181 | //传递参数 | ||
| 182 | propsParam: {}, | ||
| 183 | //页面数据 | ||
| 184 | ruleForm: { | ||
| 185 | slsq: {}, | ||
| 186 | cfdj: {}, | ||
| 187 | }, | ||
| 188 | isJfOperation: false, | ||
| 189 | tableData: [] | ||
| 190 | } | ||
| 191 | }, | ||
| 192 | mounted () { | ||
| 193 | this.ableOperation = this.$parent.currentSelectTab.ableOperation | ||
| 194 | this.propsParam = this.$attrs; | ||
| 195 | var formdata = new FormData(); | ||
| 196 | if (this.propsParam.djlx == '400') { | ||
| 197 | this.isJfOperation = true; | ||
| 198 | } | ||
| 199 | formdata.append("bsmSlsq", this.$route.query.bsmSlsq); | ||
| 200 | formdata.append("djlx", this.propsParam.djlx); | ||
| 201 | formdata.append("isEdit", this.ableOperation); | ||
| 202 | BatchInit(formdata).then((res) => { | ||
| 203 | if (res.code === 200 && res.result) { | ||
| 204 | this.ruleForm = res.result | ||
| 205 | } | ||
| 206 | }) | ||
| 207 | }, | ||
| 208 | components: { cfBdcdyTable,cfdjTable }, | ||
| 209 | props: { | ||
| 210 | flag: { | ||
| 211 | type: Boolean, | ||
| 212 | default: false, | ||
| 213 | }, | ||
| 214 | fetch: { | ||
| 215 | type: Boolean, | ||
| 216 | default: false, | ||
| 217 | }, | ||
| 218 | }, | ||
| 219 | computed: { | ||
| 220 | ...mapGetters(["dictData"]), | ||
| 221 | }, | ||
| 222 | |||
| 223 | methods: { | ||
| 224 | /** | ||
| 225 | * @description: onSubmit | ||
| 226 | * @author: renchao | ||
| 227 | */ | ||
| 228 | onSubmit () { | ||
| 229 | this.$refs['ruleForm'].validate((valid) => { | ||
| 230 | if (valid) { | ||
| 231 | this.ruleForm.bsmSlsq = this.$route.query.bsmSlsq; | ||
| 232 | batchSaveData(this.ruleForm).then((res) => { | ||
| 233 | if (res.code === 200) { | ||
| 234 | this.$message.success('保存成功'); | ||
| 235 | } | ||
| 236 | }) | ||
| 237 | } else { | ||
| 238 | this.$message({ | ||
| 239 | showClose: true, | ||
| 240 | message: "请输入登记原因", | ||
| 241 | type: "error" | ||
| 242 | }) | ||
| 243 | return false; | ||
| 244 | } | ||
| 245 | }); | ||
| 246 | |||
| 247 | }, | ||
| 248 | /** | ||
| 249 | * @description: changeCflx | ||
| 250 | * @param {*} e | ||
| 251 | * @author: renchao | ||
| 252 | */ | ||
| 253 | changeCflx (e) { | ||
| 254 | let cflxItem = {} | ||
| 255 | cflxItem = this.dictData['A32'].find((item) => { | ||
| 256 | return item.dcode == e | ||
| 257 | }) | ||
| 258 | this.ruleForm.cfdjList[0].cflxmc = cflxItem.dname; | ||
| 259 | } | ||
| 260 | }, | ||
| 261 | }; | ||
| 262 | </script> | ||
| 263 | <style scoped lang='scss'> | ||
| 264 | @import "~@/styles/public.scss"; | ||
| 265 | @import "~@/styles/slxx/slxx.scss"; | ||
| 266 | </style> |
| 1 | <!-- | ||
| 2 | * @Description: | ||
| 3 | * @Autor: renchao | ||
| 4 | * @LastEditTime: 2024-01-30 15:08:38 | ||
| 5 | --> | ||
| 6 | <template> | ||
| 7 | <div class="slxx"> | ||
| 8 | <el-form | ||
| 9 | :model="ruleForm" | ||
| 10 | :rules="rules" | ||
| 11 | ref="ruleForm" | ||
| 12 | :label-position="flagTop" | ||
| 13 | :inline="flag" | ||
| 14 | label-width="120px"> | ||
| 15 | <div class="slxx_con"> | ||
| 16 | <div class="slxx_title title-block"> | ||
| 17 | 申请业务信息 | ||
| 18 | <div class="triangle"></div> | ||
| 19 | </div> | ||
| 20 | <el-row :gutter="10"> | ||
| 21 | <el-col :span="8"> | ||
| 22 | <el-form-item :class="flag ? 'marginBot0' : ''" label="业务号:" prop="slsq.ywh"> | ||
| 23 | <el-input disabled v-model="ruleForm.flow.ywh"></el-input> | ||
| 24 | </el-form-item> | ||
| 25 | </el-col> | ||
| 26 | <el-col :span="8"> | ||
| 27 | <el-form-item :class="flag ? 'marginBot0' : ''" label="受理人员:" prop="slsq.slry"> | ||
| 28 | <el-input disabled v-model="ruleForm.slsq.slry"></el-input> | ||
| 29 | </el-form-item> | ||
| 30 | </el-col> | ||
| 31 | <el-col :span="8"> | ||
| 32 | <el-form-item :class="flag ? 'marginBot0' : ''" label="受理时间:" prop="slsq.slsj"> | ||
| 33 | <el-input disabled v-model="ruleForm.slsq.slsj"></el-input> | ||
| 34 | </el-form-item> | ||
| 35 | </el-col> | ||
| 36 | </el-row> | ||
| 37 | <el-row :gutter="10"> | ||
| 38 | <el-col :span="8"> | ||
| 39 | <el-form-item :class="flag ? 'marginBot0' : ''" label="权利类型:" prop="slsq.qllx"> | ||
| 40 | <el-select | ||
| 41 | disabled | ||
| 42 | v-model="ruleForm.sldy.qllx" | ||
| 43 | filterable | ||
| 44 | clearable | ||
| 45 | placeholder="请选择权利类型"> | ||
| 46 | <el-option | ||
| 47 | v-for="item in dictData['A8']" | ||
| 48 | :key="item.dcode" | ||
| 49 | :label="item.dname" | ||
| 50 | :value="item.dcode"></el-option> | ||
| 51 | </el-select> | ||
| 52 | </el-form-item> | ||
| 53 | </el-col> | ||
| 54 | <el-col :span="8"> | ||
| 55 | <el-form-item :class="flag ? 'marginBot0' : ''" label="登记类型:" prop="slsq.djlx"> | ||
| 56 | <el-select | ||
| 57 | disabled | ||
| 58 | v-model="ruleForm.sldy.djlx" | ||
| 59 | filterable | ||
| 60 | clearable | ||
| 61 | placeholder="请选择登记类型"> | ||
| 62 | <el-option | ||
| 63 | v-for="item in dictData['A21']" | ||
| 64 | :key="item.dcode" | ||
| 65 | :label="item.dname" | ||
| 66 | :value="item.dcode"></el-option> | ||
| 67 | </el-select> | ||
| 68 | </el-form-item> | ||
| 69 | </el-col> | ||
| 70 | <el-col :span="8"> | ||
| 71 | <el-form-item :class="flag ? 'marginBot0' : ''" label="登记情形:" prop="slsq.djqx"> | ||
| 72 | <el-input disabled v-model="ruleForm.slsq.djqxmc"></el-input> | ||
| 73 | </el-form-item> | ||
| 74 | </el-col> | ||
| 75 | </el-row> | ||
| 76 | <div class="slxx_title title-block"> | ||
| 77 | 查封不动产情况 | ||
| 78 | <div class="triangle"></div> | ||
| 79 | </div> | ||
| 80 | |||
| 81 | <el-row :gutter="10"> | ||
| 82 | <el-col :span="8"> | ||
| 83 | <el-form-item :class="flag ? 'marginBot0' : ''" label="权利类型:"> | ||
| 84 | <el-input disabled v-model="ruleForm.ztQlxx.qllxmc"></el-input> | ||
| 85 | </el-form-item> | ||
| 86 | </el-col> | ||
| 87 | |||
| 88 | <el-col :span="8"> | ||
| 89 | <el-form-item :class="flag ? 'marginBot0' : ''" label="不动产权证号:" prop="qlxx.bdcqzh"> | ||
| 90 | <el-input disabled v-model="ruleForm.ztQlxx.bdcqzh"></el-input> | ||
| 91 | </el-form-item> | ||
| 92 | </el-col> | ||
| 93 | <el-col :span="8"> | ||
| 94 | <el-form-item :class="flag ? 'marginBot0' : ''" label="共有情况:"> | ||
| 95 | <el-input disabled v-model="ruleForm.ztQlxx.gyqk"></el-input> | ||
| 96 | </el-form-item> | ||
| 97 | </el-col> | ||
| 98 | </el-row> | ||
| 99 | <el-row :gutter="10"> | ||
| 100 | <el-col :span="8"> | ||
| 101 | <el-form-item :class="flag ? 'marginBot0' : ''" label="被执行人:" prop="qlxx.qlrmc"> | ||
| 102 | <el-input disabled v-model="ruleForm.ztQlxx.qlrmc"></el-input> | ||
| 103 | </el-form-item> | ||
| 104 | </el-col> | ||
| 105 | <el-col :span="8"> | ||
| 106 | <el-form-item :class="flag ? 'marginBot0' : ''" label="证件种类:"> | ||
| 107 | <el-input disabled v-model="ruleForm.ztQlxx.qlrzjzl"></el-input> | ||
| 108 | </el-form-item> | ||
| 109 | </el-col> | ||
| 110 | <el-col :span="8"> | ||
| 111 | <el-form-item :class="flag ? 'marginBot0' : ''" label="证件号:"> | ||
| 112 | <el-input disabled v-model="ruleForm.ztQlxx.qlrzjhm"></el-input> | ||
| 113 | </el-form-item> | ||
| 114 | </el-col> | ||
| 115 | </el-row> | ||
| 116 | <el-row :gutter="10"> | ||
| 117 | <el-col :span="8"> | ||
| 118 | <el-form-item :class="flag ? 'marginBot0' : ''" label="不动产单元号:" prop="qlxx.bdcdyh"> | ||
| 119 | <el-input disabled v-model="ruleForm.ztQlxx.bdcdyh"></el-input> | ||
| 120 | </el-form-item> | ||
| 121 | </el-col> | ||
| 122 | <el-col :span="16"> | ||
| 123 | <el-form-item :class="flag ? 'marginBot0' : ''" label="坐落:"> | ||
| 124 | <el-input disabled v-model="ruleForm.ztQlxx.zl"></el-input> | ||
| 125 | </el-form-item> | ||
| 126 | </el-col> | ||
| 127 | </el-row> | ||
| 128 | <el-row :gutter="10"> | ||
| 129 | <el-col :span="8"> | ||
| 130 | <el-form-item :class="flag ? 'marginBot0' : ''" label="权利性质"> | ||
| 131 | <el-input disabled v-model="ruleForm.ztQlxx.qlxzmc"></el-input> | ||
| 132 | </el-form-item> | ||
| 133 | </el-col> | ||
| 134 | <el-col :span="8"> | ||
| 135 | <el-form-item :class="flag ? 'marginBot0' : ''" label="用途:"> | ||
| 136 | <el-input disabled v-model="ruleForm.ztQlxx.qlytmc"></el-input> | ||
| 137 | </el-form-item> | ||
| 138 | </el-col> | ||
| 139 | <el-col :span="8"> | ||
| 140 | <el-form-item :class="flag ? 'marginBot0' : ''" label="面积:"> | ||
| 141 | <el-input disabled v-model="ruleForm.ztQlxx.qlmjmc"></el-input> | ||
| 142 | </el-form-item> | ||
| 143 | </el-col> | ||
| 144 | </el-row> | ||
| 145 | |||
| 146 | <div class="slxx_title title-block"> | ||
| 147 | 查封信息 | ||
| 148 | <div class="triangle"></div> | ||
| 149 | </div> | ||
| 150 | <el-row :gutter="10"> | ||
| 151 | <el-col :span="8"> | ||
| 152 | <el-form-item :class="flag ? 'marginBot0' : ''" label="原告:" prop="cfdj.cfwh"> | ||
| 153 | <el-input | ||
| 154 | v-model="ruleForm.cfdj.yg" | ||
| 155 | :disabled="!viewEdit || ableEdit || isJfOperation"></el-input> | ||
| 156 | </el-form-item> | ||
| 157 | </el-col> | ||
| 158 | <el-col :span="8"> | ||
| 159 | <el-form-item :class="flag ? 'marginBot0' : ''" label="查封文号:" prop="cfdj.cfwh"> | ||
| 160 | <el-input | ||
| 161 | v-model="ruleForm.cfdj.cfwh" | ||
| 162 | :disabled="!viewEdit || ableEdit || isJfOperation"></el-input> | ||
| 163 | </el-form-item> | ||
| 164 | </el-col> | ||
| 165 | <el-col :span="8"> | ||
| 166 | <el-form-item :class="flag ? 'marginBot0' : ''" label="查封机关:" prop="cfdj.cfjg"> | ||
| 167 | <el-input | ||
| 168 | v-model="ruleForm.cfdj.cfjg" | ||
| 169 | :disabled="!viewEdit || ableEdit || isJfOperation"></el-input> | ||
| 170 | </el-form-item> | ||
| 171 | </el-col> | ||
| 172 | </el-row> | ||
| 173 | <el-row :gutter="10"> | ||
| 174 | <el-col :span="8"> | ||
| 175 | <el-form-item :class="flag ? 'marginBot0' : ''" label="查封类型:" prop="cfdj.cflxmc"> | ||
| 176 | <el-input v-model="ruleForm.cfdj.cflxmc" disabled></el-input> | ||
| 177 | </el-form-item> | ||
| 178 | </el-col> | ||
| 179 | <el-col :span="16"> | ||
| 180 | <el-form-item :class="flag ? 'marginBot0' : ''" label="查封文件:" prop="cfdj.cfwj"> | ||
| 181 | <el-input | ||
| 182 | v-model="ruleForm.cfdj.cfwj" | ||
| 183 | :disabled="!viewEdit || ableEdit || isJfOperation"></el-input> | ||
| 184 | </el-form-item> | ||
| 185 | </el-col> | ||
| 186 | </el-row> | ||
| 187 | <el-row :gutter="10"> | ||
| 188 | <el-col :span="8"> | ||
| 189 | <el-form-item :class="flag ? 'marginBot0' : ''" label="查封期限:" prop="cfdj.cfqx"> | ||
| 190 | <el-input | ||
| 191 | v-model="ruleForm.cfdj.cfqx" | ||
| 192 | :disabled="!viewEdit || ableEdit || isJfOperation"></el-input> | ||
| 193 | </el-form-item> | ||
| 194 | </el-col> | ||
| 195 | <el-col :span="8"> | ||
| 196 | <el-form-item :class="flag ? 'marginBot0' : ''" label="查封起始时间:" prop="cfdj.cfqssj"> | ||
| 197 | <el-date-picker | ||
| 198 | v-model="ruleForm.cfdj.cfqssj" | ||
| 199 | class="width100" | ||
| 200 | type="date" | ||
| 201 | placeholder="选择日期" | ||
| 202 | value-format="yyyy-MM-dd" | ||
| 203 | :disabled="!viewEdit || ableEdit || isJfOperation"></el-date-picker> | ||
| 204 | </el-form-item> | ||
| 205 | </el-col> | ||
| 206 | <el-col :span="8"> | ||
| 207 | <el-form-item :class="flag ? 'marginBot0' : ''" label="查封结束时间:" prop="cfdj.cfjssj"> | ||
| 208 | <el-date-picker | ||
| 209 | v-model="ruleForm.cfdj.cfjssj" | ||
| 210 | class="width100" | ||
| 211 | :disabled="!viewEdit || ableEdit || isJfOperation" | ||
| 212 | type="date" | ||
| 213 | placeholder="选择日期" | ||
| 214 | value-format="yyyy-MM-dd"></el-date-picker> | ||
| 215 | </el-form-item> | ||
| 216 | </el-col> | ||
| 217 | </el-row> | ||
| 218 | |||
| 219 | <el-row :gutter="10"> | ||
| 220 | <el-col :span="24"> | ||
| 221 | <el-form-item :class="flag ? 'marginBot0' : ''" label="查封范围:" prop="cfdj.cffw"> | ||
| 222 | <el-input | ||
| 223 | v-model="ruleForm.cfdj.cffw" | ||
| 224 | :disabled="!viewEdit || ableEdit || isJfOperation"></el-input> | ||
| 225 | </el-form-item> | ||
| 226 | </el-col> | ||
| 227 | </el-row> | ||
| 228 | <el-row :gutter="10"> | ||
| 229 | <el-col :span="24"> | ||
| 230 | <el-form-item :class="flag ? 'marginBot0' : ''" label="附记:" prop="cfdj.fj"> | ||
| 231 | <el-input | ||
| 232 | v-model="ruleForm.cfdj.fj" | ||
| 233 | type="textarea" | ||
| 234 | :disabled="!viewEdit || ableEdit || isJfOperation"></el-input> | ||
| 235 | </el-form-item> | ||
| 236 | </el-col> | ||
| 237 | </el-row> | ||
| 238 | <el-row :gutter="10"> | ||
| 239 | <el-col> | ||
| 240 | <el-form-item :class="flag ? 'marginBot0' : ''" label="登记原因:" prop="cfdj.djyy"> | ||
| 241 | <el-input | ||
| 242 | class="textArea" | ||
| 243 | type="textarea" | ||
| 244 | v-model="ruleForm.cfdj.djyy" | ||
| 245 | :disabled="!viewEdit || ableEdit || isJfOperation"></el-input> | ||
| 246 | </el-form-item> | ||
| 247 | </el-col> | ||
| 248 | </el-row> | ||
| 249 | <div v-if="propsParam.djlx == '400'"> | ||
| 250 | <div class="slxx_title title-block"> | ||
| 251 | 解封信息 | ||
| 252 | <div class="triangle"></div> | ||
| 253 | </div> | ||
| 254 | <el-row :gutter="10"> | ||
| 255 | <el-col :span="8"> | ||
| 256 | <el-form-item :class="flag ? 'marginBot0' : ''" label="解封机关:" prop="cfdj.jfjg"> | ||
| 257 | <el-input | ||
| 258 | v-model="ruleForm.cfdj.jfjg" | ||
| 259 | :disabled="!viewEdit || ableEdit"></el-input> | ||
| 260 | </el-form-item> | ||
| 261 | </el-col> | ||
| 262 | <el-col :span="8"> | ||
| 263 | <el-form-item :class="flag ? 'marginBot0' : ''" label="解封文件:" prop="cfdj.jfwj"> | ||
| 264 | <el-input | ||
| 265 | v-model="ruleForm.cfdj.jfwj" | ||
| 266 | :disabled="!viewEdit || ableEdit"></el-input> | ||
| 267 | </el-form-item> | ||
| 268 | </el-col> | ||
| 269 | <el-col :span="8"> | ||
| 270 | <el-form-item :class="flag ? 'marginBot0' : ''" label="解封文号:" prop="cfdj.jfwh"> | ||
| 271 | <el-input | ||
| 272 | v-model="ruleForm.cfdj.jfwh" | ||
| 273 | :disabled="!viewEdit || ableEdit"></el-input> | ||
| 274 | </el-form-item> | ||
| 275 | </el-col> | ||
| 276 | </el-row> | ||
| 277 | </div> | ||
| 278 | </div> | ||
| 279 | <el-row class="btn" v-if="viewEdit && !ableEdit"> | ||
| 280 | <el-form-item :class="flag ? 'marginBot0' : ''"> | ||
| 281 | <el-button type="primary" @click="onSubmit">保存</el-button> | ||
| 282 | </el-form-item> | ||
| 283 | </el-row> | ||
| 284 | </el-form> | ||
| 285 | </div> | ||
| 286 | </template> | ||
| 287 | <script> | ||
| 288 | import sqrViewTable from "@/views/workflow/components/sqrViewTable"; | ||
| 289 | import { Init, saveData } from "@/api/workflow/cfdjFlow.js"; | ||
| 290 | import { mapGetters } from "vuex"; | ||
| 291 | export default { | ||
| 292 | data () { | ||
| 293 | return { | ||
| 294 | // 键名转换,方法默认是label和children进行树状渲染 | ||
| 295 | normalizer (node) { | ||
| 296 | //方法 | ||
| 297 | if (node.children == null || node.children == "null") { | ||
| 298 | delete node.children; | ||
| 299 | } | ||
| 300 | return { | ||
| 301 | id: node.dcode, | ||
| 302 | label: node.dname, | ||
| 303 | }; | ||
| 304 | }, | ||
| 305 | //表单是否可操作 | ||
| 306 | viewEdit: false, | ||
| 307 | disabled: true, | ||
| 308 | flagTop: this.flag ? "top" : "", | ||
| 309 | rules: { | ||
| 310 | 'cfdj.djyy': [ | ||
| 311 | { required: true, message: '请输入登记原因', trigger: 'blur' } | ||
| 312 | ] | ||
| 313 | }, | ||
| 314 | //传递参数 | ||
| 315 | propsParam: {}, | ||
| 316 | //页面数据 | ||
| 317 | ruleForm: {}, | ||
| 318 | //是否可编辑 | ||
| 319 | ableEdit: false, | ||
| 320 | //是否为解封 | ||
| 321 | isJfOperation: false, | ||
| 322 | }; | ||
| 323 | }, | ||
| 324 | async created () { | ||
| 325 | this.propsParam = this.$attrs; | ||
| 326 | this.ableEdit = this.$parent.showBatch; | ||
| 327 | this.viewEdit = this.$parent.currentSelectTab.ableOperation | ||
| 328 | if (this.propsParam.djlx == "400") { | ||
| 329 | this.isJfOperation = true; | ||
| 330 | } | ||
| 331 | var formdata = new FormData(); | ||
| 332 | formdata.append("bsmSldy", this.propsParam.bsmSldy); | ||
| 333 | formdata.append("djlx", this.propsParam.djlx); | ||
| 334 | formdata.append("isEdit", this.viewEdit); | ||
| 335 | Init(formdata).then((res) => { | ||
| 336 | if (res.code === 200 && res.result) { | ||
| 337 | this.ruleForm = res.result; | ||
| 338 | } else { | ||
| 339 | this.$message.error(res.message); | ||
| 340 | } | ||
| 341 | }); | ||
| 342 | }, | ||
| 343 | watch: {}, | ||
| 344 | components: { sqrViewTable }, | ||
| 345 | props: { | ||
| 346 | flag: { | ||
| 347 | type: Boolean, | ||
| 348 | default: false, | ||
| 349 | }, | ||
| 350 | fetch: { | ||
| 351 | type: Boolean, | ||
| 352 | default: false, | ||
| 353 | }, | ||
| 354 | }, | ||
| 355 | computed: { | ||
| 356 | ...mapGetters(["dictData"]) | ||
| 357 | }, | ||
| 358 | |||
| 359 | methods: { | ||
| 360 | /** | ||
| 361 | * @description: onSubmit | ||
| 362 | * @author: renchao | ||
| 363 | */ | ||
| 364 | onSubmit () { | ||
| 365 | this.$refs['ruleForm'].validate((valid) => { | ||
| 366 | if (valid) { | ||
| 367 | saveData(this.ruleForm).then((res) => { | ||
| 368 | if (res.code === 200) { | ||
| 369 | this.$message.success("保存成功"); | ||
| 370 | } | ||
| 371 | }) | ||
| 372 | } else { | ||
| 373 | this.$message({ | ||
| 374 | showClose: true, | ||
| 375 | message: "请输入登记原因", | ||
| 376 | type: "error" | ||
| 377 | }) | ||
| 378 | return false | ||
| 379 | } | ||
| 380 | }) | ||
| 381 | }, | ||
| 382 | /** | ||
| 383 | * @description: changeCflx | ||
| 384 | * @param {*} e | ||
| 385 | * @author: renchao | ||
| 386 | */ | ||
| 387 | changeCflx (e) { | ||
| 388 | let cflxItem = {}; | ||
| 389 | cflxItem = this.dictData["A32"].find((item) => { | ||
| 390 | return item.dcode == e; | ||
| 391 | }); | ||
| 392 | this.ruleForm.cfdj.cflxmc = cflxItem.dname | ||
| 393 | } | ||
| 394 | } | ||
| 395 | } | ||
| 396 | </script> | ||
| 397 | <style scoped lang='scss'> | ||
| 398 | @import "~@/styles/public.scss"; | ||
| 399 | @import "~@/styles/slxx/slxx.scss"; | ||
| 400 | </style> |
| 1 | <template> | ||
| 2 | <!-- 受理信息 --> | ||
| 3 | <div class="slxx"> | ||
| 4 | <el-form | ||
| 5 | :model="ruleForm" | ||
| 6 | v-Loading="loading" | ||
| 7 | :label-position="flag ? 'top' : ''" | ||
| 8 | :inline="flag" | ||
| 9 | ref="ruleForm" | ||
| 10 | label-width="140px"> | ||
| 11 | <div class="slxx_con" :class="flag ? 'formMarginBot0' : ''"> | ||
| 12 | <div class="slxx_title title-block"> | ||
| 13 | 申请业务信息 | ||
| 14 | <div class="triangle"></div> | ||
| 15 | </div> | ||
| 16 | <el-row :gutter="10" v-if="ruleForm.flow"> | ||
| 17 | <el-col :span="8"> | ||
| 18 | <el-form-item label="业务号:"> | ||
| 19 | <el-input disabled v-model="ruleForm.flow.ywh"></el-input> | ||
| 20 | </el-form-item> | ||
| 21 | </el-col> | ||
| 22 | <el-col :span="8"> | ||
| 23 | <el-form-item label="受理人员:"> | ||
| 24 | <el-input disabled v-model="ruleForm.slsq.slry"></el-input> | ||
| 25 | </el-form-item> | ||
| 26 | </el-col> | ||
| 27 | <el-col :span="8"> | ||
| 28 | <el-form-item label="受理时间:"> | ||
| 29 | <el-input disabled v-model="ruleForm.slsq.slsj"></el-input> | ||
| 30 | </el-form-item> | ||
| 31 | </el-col> | ||
| 32 | </el-row> | ||
| 33 | <el-row :gutter="10" v-if="ruleForm.sldyList"> | ||
| 34 | <el-col :span="8"> | ||
| 35 | <el-form-item label="权利类型:"> | ||
| 36 | <el-input | ||
| 37 | disabled | ||
| 38 | v-model="ruleForm.sldyList[0].qllxmc"></el-input> | ||
| 39 | </el-form-item> | ||
| 40 | </el-col> | ||
| 41 | <el-col :span="8"> | ||
| 42 | <el-form-item label="登记类型:"> | ||
| 43 | <el-input | ||
| 44 | disabled | ||
| 45 | v-model="ruleForm.sldyList[0].djlxmc"></el-input> | ||
| 46 | </el-form-item> | ||
| 47 | </el-col> | ||
| 48 | <el-col :span="8"> | ||
| 49 | <el-form-item label="登记情形:"> | ||
| 50 | <el-input disabled v-model="ruleForm.slsq.djqxmc"></el-input> | ||
| 51 | </el-form-item> | ||
| 52 | </el-col> | ||
| 53 | </el-row> | ||
| 54 | |||
| 55 | <div | ||
| 56 | class="slxx_title title-block" | ||
| 57 | v-if="ruleForm.slsq.djywbm.includes('400')"> | ||
| 58 | 在抵押权信息列表({{ ruleForm.diyaqDetailList.length }} 个) | ||
| 59 | <div class="triangle"></div> | ||
| 60 | <dyaqTable :tableData="ruleForm.diyaqDetailList" /> | ||
| 61 | </div> | ||
| 62 | <div | ||
| 63 | class="slxx_title title-block" | ||
| 64 | v-else> | ||
| 65 | 抵押不动产列表信息({{ ruleForm.ztQlxxList.length }} 个) | ||
| 66 | <div class="triangle"></div> | ||
| 67 | <cfBdcdyTable :tableData="ruleForm.ztQlxxList" /> | ||
| 68 | </div> | ||
| 69 | <div class="slxx_title title-block" v-if="!ruleForm.slsq.djywbm.includes('400')"> | ||
| 70 | 抵押信息 | ||
| 71 | <div class="triangle"></div> | ||
| 72 | </div> | ||
| 73 | <el-row | ||
| 74 | :gutter="10" | ||
| 75 | v-if="ruleForm.diyaqList && ruleForm.diyaqList.length > 0 && !ruleForm.slsq.djywbm.includes('400')"> | ||
| 76 | <el-col :span="8"> | ||
| 77 | <el-form-item label="抵押方式:"> | ||
| 78 | <el-radio-group disabled v-model="ruleForm.diyaqList[0].dyfs"> | ||
| 79 | <el-radio label="1">一般抵押</el-radio> | ||
| 80 | <el-radio label="2">最高额抵押</el-radio> | ||
| 81 | </el-radio-group> | ||
| 82 | </el-form-item> | ||
| 83 | </el-col> | ||
| 84 | <el-col :span="8"> | ||
| 85 | <el-form-item label="抵押金额类型:"> | ||
| 86 | <el-radio-group | ||
| 87 | v-model="ruleForm.diyaqList[0].dyjelx" | ||
| 88 | :disabled="!viewEdit || ruleForm.slsq.djywbm.includes('400')"> | ||
| 89 | <el-radio label="0">独立抵押</el-radio> | ||
| 90 | <el-radio label="1">整体抵押</el-radio> | ||
| 91 | </el-radio-group> | ||
| 92 | </el-form-item> | ||
| 93 | </el-col> | ||
| 94 | <el-col :span="8"> | ||
| 95 | <el-form-item | ||
| 96 | label="是否存在禁止或者限制转让抵押不动产的约定:" | ||
| 97 | label-width="300px"> | ||
| 98 | <el-radio-group | ||
| 99 | v-model="ruleForm.diyaqList[0].sfczjzhxz" | ||
| 100 | :disabled="!viewEdit || ruleForm.slsq.djywbm.includes('400')"> | ||
| 101 | <el-radio label="1">启用</el-radio> | ||
| 102 | <el-radio label="0">禁用</el-radio> | ||
| 103 | </el-radio-group> | ||
| 104 | </el-form-item> | ||
| 105 | </el-col> | ||
| 106 | </el-row> | ||
| 107 | <el-row | ||
| 108 | :gutter="10" | ||
| 109 | v-if="ruleForm.diyaqList && ruleForm.diyaqList.length > 0 && !ruleForm.slsq.djywbm.includes('400')"> | ||
| 110 | <el-col :span="8" v-show="ruleForm.diyaqList[0].dyfs == 1"> | ||
| 111 | <el-form-item label="被担保主债权数额:"> | ||
| 112 | <div style="display: flex"> | ||
| 113 | <el-input | ||
| 114 | v-model="ruleForm.diyaqList[0].bdbzzqse" | ||
| 115 | :disabled="!viewEdit || ruleForm.slsq.djywbm.includes('400')"></el-input> | ||
| 116 | <el-select | ||
| 117 | style="width: 68px" | ||
| 118 | v-model="ruleForm.diyaqList[0].jedw" | ||
| 119 | :disabled="!viewEdit || ruleForm.slsq.djywbm.includes('400')"> | ||
| 120 | <el-option | ||
| 121 | v-for="item in dictData['A57']" | ||
| 122 | :key="item.dcode" | ||
| 123 | :label="item.dname" | ||
| 124 | :value="item.dcode"> | ||
| 125 | </el-option> | ||
| 126 | </el-select> | ||
| 127 | </div> | ||
| 128 | </el-form-item> | ||
| 129 | </el-col> | ||
| 130 | |||
| 131 | <el-col :span="8" v-show="ruleForm.diyaqList[0].dyfs == 2"> | ||
| 132 | <el-form-item label="最高债权额:"> | ||
| 133 | <el-input | ||
| 134 | v-model="ruleForm.diyaqList[0].zgzqse" | ||
| 135 | :disabled="!viewEdit || ruleForm.slsq.djywbm.includes('400')"></el-input> | ||
| 136 | <el-select | ||
| 137 | v-model="ruleForm.diyaqList[0].jedw" | ||
| 138 | :disabled="!viewEdit || ruleForm.slsq.djywbm.includes('400')"> | ||
| 139 | <el-option | ||
| 140 | v-for="item in dictData['A57']" | ||
| 141 | :key="item.dcode" | ||
| 142 | :label="item.dname" | ||
| 143 | :value="item.dcode"> | ||
| 144 | </el-option> | ||
| 145 | </el-select> | ||
| 146 | </el-form-item> | ||
| 147 | </el-col> | ||
| 148 | |||
| 149 | <el-col :span="8"> | ||
| 150 | <el-form-item label="债务履行起始时间:"> | ||
| 151 | <el-date-picker | ||
| 152 | v-model="ruleForm.diyaqList[0].zwlxqssj" | ||
| 153 | :disabled="!viewEdit || ruleForm.slsq.djywbm.includes('400')" | ||
| 154 | type="date"> | ||
| 155 | </el-date-picker> | ||
| 156 | </el-form-item> | ||
| 157 | </el-col> | ||
| 158 | <el-col :span="8"> | ||
| 159 | <el-form-item label="债务履行结束时间:"> | ||
| 160 | <el-date-picker | ||
| 161 | v-model="ruleForm.diyaqList[0].zwlxjssj" | ||
| 162 | :disabled="!viewEdit || ruleForm.slsq.djywbm.includes('400')" | ||
| 163 | type="date"> | ||
| 164 | </el-date-picker> | ||
| 165 | </el-form-item> | ||
| 166 | </el-col> | ||
| 167 | </el-row> | ||
| 168 | <el-row v-if="ruleForm.diyaqList && ruleForm.diyaqList.length > 0 && !ruleForm.slsq.djywbm.includes('400')"> | ||
| 169 | <el-col :span="24"> | ||
| 170 | <el-form-item label="担保范围:"> | ||
| 171 | <el-input | ||
| 172 | v-model="ruleForm.diyaqList[0].dbfw" | ||
| 173 | :disabled="!viewEdit || ruleForm.slsq.djywbm.includes('400')"></el-input> | ||
| 174 | </el-form-item> | ||
| 175 | </el-col> | ||
| 176 | </el-row> | ||
| 177 | <el-row v-if="ruleForm.diyaqList && ruleForm.diyaqList.length > 0 && !ruleForm.slsq.djywbm.includes('400')"> | ||
| 178 | <el-col :span="24"> | ||
| 179 | <el-form-item label="最高债权确定事实和数额:"> | ||
| 180 | <el-input | ||
| 181 | v-model="ruleForm.diyaqList[0].zgzqqdss" | ||
| 182 | :disabled="!viewEdit || ruleForm.slsq.djywbm.includes('400')"></el-input> | ||
| 183 | </el-form-item> | ||
| 184 | </el-col> | ||
| 185 | </el-row> | ||
| 186 | <el-row v-if="ruleForm.diyaqList && ruleForm.diyaqList.length > 0 && !ruleForm.slsq.djywbm.includes('400')"> | ||
| 187 | <el-col> | ||
| 188 | <el-form-item label="附记:" prop="fj"> | ||
| 189 | <el-input | ||
| 190 | type="textarea" | ||
| 191 | maxlength="500" | ||
| 192 | show-word-limit | ||
| 193 | v-model="ruleForm.diyaqList[0].fj" | ||
| 194 | :disabled="!viewEdit || ruleForm.slsq.djywbm.includes('400')"></el-input> | ||
| 195 | </el-form-item> | ||
| 196 | </el-col> | ||
| 197 | </el-row> | ||
| 198 | |||
| 199 | <div class="slxx_title title-block"> | ||
| 200 | 抵押权人信息 | ||
| 201 | <div class="triangle"></div> | ||
| 202 | </div> | ||
| 203 | <el-row | ||
| 204 | :gutter="10" | ||
| 205 | v-if="ruleForm.sldyList && ruleForm.sldyList.length > 0"> | ||
| 206 | <el-col :span="14"> | ||
| 207 | <el-form-item label="共有方式:"> | ||
| 208 | <el-radio-group | ||
| 209 | :disabled="!viewEdit" | ||
| 210 | v-model="ruleForm.sldyList[0].gyfs"> | ||
| 211 | <el-radio label="0">单独所有</el-radio> | ||
| 212 | <el-radio label="1">共同共有</el-radio> | ||
| 213 | <el-radio label="2">按份所有</el-radio> | ||
| 214 | <el-radio label="3">其它共有</el-radio> | ||
| 215 | </el-radio-group> | ||
| 216 | </el-form-item> | ||
| 217 | </el-col> | ||
| 218 | <el-col :span="5" v-show="ruleForm.sldyList[0].gyfs != '0'"> | ||
| 219 | <el-form-item label="是否分别持证:"> | ||
| 220 | <el-radio-group | ||
| 221 | v-model="ruleForm.sldyList[0].sqfbcz" | ||
| 222 | :disabled="!viewEdit" | ||
| 223 | @input="updaterow()"> | ||
| 224 | <el-radio :label="1">是</el-radio> | ||
| 225 | <el-radio :label="0">否</el-radio> | ||
| 226 | </el-radio-group> | ||
| 227 | </el-form-item> | ||
| 228 | </el-col> | ||
| 229 | <el-col | ||
| 230 | :span="5" | ||
| 231 | v-show=" | ||
| 232 | ruleForm.sldyList[0].gyfs != '0' && | ||
| 233 | ruleForm.sldyList[0].sqfbcz == '0' | ||
| 234 | "> | ||
| 235 | <el-form-item label="持证人:"> | ||
| 236 | <el-select | ||
| 237 | v-model="czr" | ||
| 238 | placeholder="持证人" | ||
| 239 | :disabled="!viewEdit"> | ||
| 240 | <el-option | ||
| 241 | v-for="(item,index) in czrOptions" | ||
| 242 | :key="index" | ||
| 243 | :label="item.sqrmc" | ||
| 244 | :value="item.id"> | ||
| 245 | </el-option> | ||
| 246 | </el-select> | ||
| 247 | </el-form-item> | ||
| 248 | </el-col> | ||
| 249 | </el-row> | ||
| 250 | <qlrCommonTable | ||
| 251 | v-if="ruleForm.sldyList && ruleForm.sldyList.length > 0" | ||
| 252 | :tableData="ruleForm.qlrList" | ||
| 253 | @upDateQlrxxList="upDateQlrxxList" | ||
| 254 | :disabled="viewEdit" | ||
| 255 | :gyfs="ruleForm.sldyList[0].gyfs" /> | ||
| 256 | <div class="slxx_title title-block"> | ||
| 257 | 抵押人信息 | ||
| 258 | <div class="triangle"></div> | ||
| 259 | </div> | ||
| 260 | <qlrCommonTable | ||
| 261 | :tableData="ruleForm.ywrList" | ||
| 262 | @upDateQlrxxList="upDateYwrxxList" | ||
| 263 | :disabled="viewEdit" /> | ||
| 264 | |||
| 265 | <div class="slxx_title title-block"> | ||
| 266 | 登记原因 | ||
| 267 | <div class="triangle"></div> | ||
| 268 | </div> | ||
| 269 | <el-row | ||
| 270 | :gutter="10" | ||
| 271 | v-if="ruleForm.diyaqList && ruleForm.diyaqList.length > 0"> | ||
| 272 | <el-col> | ||
| 273 | <el-form-item | ||
| 274 | v-if="ruleForm.sldyList[0].djlx == '400'" | ||
| 275 | label="注销抵押原因:" | ||
| 276 | prop="djyy"> | ||
| 277 | <el-input | ||
| 278 | class="textArea" | ||
| 279 | type="textarea" | ||
| 280 | :disabled="!viewEdit" | ||
| 281 | v-model="ruleForm.diyaqList[0].zxdyyy"> | ||
| 282 | </el-input> | ||
| 283 | </el-form-item> | ||
| 284 | <el-form-item v-else label="登记原因:" prop="diyaqList[0].djyy"> | ||
| 285 | <el-input | ||
| 286 | class="textArea" | ||
| 287 | type="textarea" | ||
| 288 | maxlength="500" | ||
| 289 | show-word-limit | ||
| 290 | :disabled="!viewEdit" | ||
| 291 | v-model="ruleForm.diyaqList[0].djyy"> | ||
| 292 | </el-input> | ||
| 293 | </el-form-item> | ||
| 294 | </el-col> | ||
| 295 | </el-row> | ||
| 296 | </div> | ||
| 297 | <el-row class="btn" v-if="isSave"> | ||
| 298 | <el-form-item> | ||
| 299 | <el-button type="primary" @click="onSubmitClick()">保存</el-button> | ||
| 300 | </el-form-item> | ||
| 301 | </el-row> | ||
| 302 | </el-form> | ||
| 303 | </div> | ||
| 304 | </template> | ||
| 305 | <script> | ||
| 306 | import cfBdcdyTable from "@/views/workflow/components/cfBdcdyTable"; | ||
| 307 | import dyaqTable from "@/views/workflow/components/dyaqTable"; | ||
| 308 | import qlrCommonTable from "@/views/workflow/components/qlrCommonTable"; | ||
| 309 | import { batchInit, saveBatchData } from "@/api/workflow/diyaqFlow.js"; | ||
| 310 | import { mapGetters } from "vuex"; | ||
| 311 | export default { | ||
| 312 | mounted () { | ||
| 313 | let that = this | ||
| 314 | this.viewEdit = this.$parent.currentSelectTab.ableOperation; | ||
| 315 | this.propsParam = this.$attrs; | ||
| 316 | var formdata = new FormData(); | ||
| 317 | |||
| 318 | this.loading = true | ||
| 319 | formdata.append("bsmSlsq", this.$route.query.bsmSlsq); | ||
| 320 | formdata.append("djlx", this.propsParam.djlx); | ||
| 321 | formdata.append("isEdit", this.viewEdit); | ||
| 322 | batchInit(formdata).then((res) => { | ||
| 323 | setTimeout(() => { | ||
| 324 | that.loading = false | ||
| 325 | }, 200) | ||
| 326 | if (res.code === 200 && res.result) { | ||
| 327 | this.ruleForm = res.result; | ||
| 328 | this.ruleForm.qlrList.forEach((item) => { | ||
| 329 | item.id = item.bsmSqr | ||
| 330 | if (item.sfczr == '1') { | ||
| 331 | that.czr = item.bsmSqr | ||
| 332 | } | ||
| 333 | }) | ||
| 334 | that.czrOptions = that.ruleForm.qlrList; | ||
| 335 | that.isSave = that.viewEdit | ||
| 336 | } else { | ||
| 337 | that.isSave = false | ||
| 338 | that.$confirm(res.message, '提示', { | ||
| 339 | cancelButtonText: '取消', | ||
| 340 | showConfirmButton: false, | ||
| 341 | type: 'warning' | ||
| 342 | }) | ||
| 343 | } | ||
| 344 | }).catch(() => { | ||
| 345 | this.loading = false | ||
| 346 | }) | ||
| 347 | }, | ||
| 348 | components: { qlrCommonTable, cfBdcdyTable,dyaqTable }, | ||
| 349 | computed: { | ||
| 350 | ...mapGetters(["dictData", "flag"]), | ||
| 351 | }, | ||
| 352 | data () { | ||
| 353 | return { | ||
| 354 | isSave: true, | ||
| 355 | loading: false, | ||
| 356 | //表单是否可操作 | ||
| 357 | viewEdit: true, | ||
| 358 | disabled: true, | ||
| 359 | czrOptions: [], | ||
| 360 | czr: "", | ||
| 361 | ruleForm: {}, | ||
| 362 | //传递参数 | ||
| 363 | propsParam: {}, | ||
| 364 | rules: { | ||
| 365 | 'diyaqList[0].djyy': [ | ||
| 366 | { required: true, message: '请输入登记原因', trigger: 'blur' } | ||
| 367 | ] | ||
| 368 | }, | ||
| 369 | tableData: [], | ||
| 370 | }; | ||
| 371 | }, | ||
| 372 | methods: { | ||
| 373 | /** | ||
| 374 | * @description: onSubmitClick | ||
| 375 | * @author: renchao | ||
| 376 | */ | ||
| 377 | onSubmitClick () { | ||
| 378 | let that = this; | ||
| 379 | if (this.ruleForm.qlrList.length == 0) { | ||
| 380 | this.$message({ | ||
| 381 | showClose: true, | ||
| 382 | message: "请确认抵押权人信息", | ||
| 383 | type: "error", | ||
| 384 | }); | ||
| 385 | return false; | ||
| 386 | } | ||
| 387 | if (this.ruleForm.sldyList[0].gyfs == "0") { | ||
| 388 | if (this.ruleForm.qlrList.length > 1) { | ||
| 389 | this.$message({ | ||
| 390 | showClose: true, | ||
| 391 | message: "共有方式:单独所有,抵押权人只能是一个人", | ||
| 392 | type: "error", | ||
| 393 | }); | ||
| 394 | return false; | ||
| 395 | } | ||
| 396 | this.ruleForm.qlrList[0].sfczr = "1"; | ||
| 397 | } else { | ||
| 398 | if (this.ruleForm.qlrList.length <= 1) { | ||
| 399 | this.$message({ | ||
| 400 | showClose: true, | ||
| 401 | message: | ||
| 402 | "共有方式:共同所有,按份所有,其他所有,抵押权人必须是两个以上", | ||
| 403 | type: "error", | ||
| 404 | }); | ||
| 405 | return false; | ||
| 406 | } | ||
| 407 | //是否分别持证 | ||
| 408 | if (this.ruleForm.sldyList[0].sqfbcz == "1") { | ||
| 409 | //是 | ||
| 410 | this.ruleForm.qlrList.forEach((item, index) => { | ||
| 411 | item.sfczr = "1" | ||
| 412 | }) | ||
| 413 | } else { | ||
| 414 | if (that.czr === '') { | ||
| 415 | that.$message({ | ||
| 416 | showClose: true, | ||
| 417 | message: "请选择持证人", | ||
| 418 | type: "error", | ||
| 419 | }); | ||
| 420 | return false; | ||
| 421 | } | ||
| 422 | this.ruleForm.qlrList.forEach((item, index) => { | ||
| 423 | if (item.id == that.czr) { | ||
| 424 | item.sfczr = "1"; | ||
| 425 | } else { | ||
| 426 | item.sfczr = "0"; | ||
| 427 | } | ||
| 428 | }); | ||
| 429 | } | ||
| 430 | } | ||
| 431 | this.$refs['ruleForm'].validate((valid) => { | ||
| 432 | if (valid) { | ||
| 433 | that.$store.dispatch("user/refreshPage", false); | ||
| 434 | saveBatchData(that.ruleForm, that.propsParam.djlx).then((res) => { | ||
| 435 | if (res.code === 200) { | ||
| 436 | that.$message({ | ||
| 437 | showClose: true, | ||
| 438 | message: "保存成功!", | ||
| 439 | type: "success", | ||
| 440 | }); | ||
| 441 | that.$store.dispatch("user/refreshPage", true); | ||
| 442 | } else { | ||
| 443 | that.$message({ | ||
| 444 | showClose: true, | ||
| 445 | message: res.message, | ||
| 446 | type: "error", | ||
| 447 | }); | ||
| 448 | } | ||
| 449 | }) | ||
| 450 | } else { | ||
| 451 | that.$message({ | ||
| 452 | showClose: true, | ||
| 453 | message: "请输入登记原因", | ||
| 454 | type: "error" | ||
| 455 | }) | ||
| 456 | return false | ||
| 457 | } | ||
| 458 | }) | ||
| 459 | }, | ||
| 460 | /** | ||
| 461 | * @description: 是否持证人变化 | ||
| 462 | * @param {*} val | ||
| 463 | * @author: renchao | ||
| 464 | */ | ||
| 465 | updaterow () { | ||
| 466 | this.czr = ""; | ||
| 467 | }, | ||
| 468 | /** | ||
| 469 | * @description: 更新抵押权人信息 | ||
| 470 | * @param {*} val | ||
| 471 | * @author: renchao | ||
| 472 | */ | ||
| 473 | upDateQlrxxList (val) { | ||
| 474 | if (!_.isEqual(val, this.ruleForm.qlrList)) { | ||
| 475 | this.ruleForm.qlrList = _.cloneDeep(val); | ||
| 476 | this.czrOptions = this.ruleForm.qlrList; | ||
| 477 | } | ||
| 478 | this.num = 0 | ||
| 479 | this.ruleForm.qlrList.forEach(item => { | ||
| 480 | if (item.id == this.czr) { | ||
| 481 | this.num++ | ||
| 482 | } | ||
| 483 | }) | ||
| 484 | if (this.num == 0) { | ||
| 485 | this.czr = '' | ||
| 486 | } | ||
| 487 | }, | ||
| 488 | /** | ||
| 489 | * @description: 更新义务人信息 | ||
| 490 | * @param {*} val | ||
| 491 | * @author: renchao | ||
| 492 | */ | ||
| 493 | upDateYwrxxList (val) { | ||
| 494 | if (!_.isEqual(val, this.ruleForm.ywrList)) { | ||
| 495 | this.ruleForm.ywrList = _.cloneDeep(val); | ||
| 496 | } | ||
| 497 | } | ||
| 498 | } | ||
| 499 | } | ||
| 500 | </script> | ||
| 501 | <style scoped lang="scss"> | ||
| 502 | @import "~@/styles/public.scss"; | ||
| 503 | @import "~@/styles/slxx/slxx.scss"; | ||
| 504 | </style> |
src/views/ywbl/slsqxx/diyaq/slxx.vue
deleted
100644 → 0
| 1 | <!-- | ||
| 2 | * @Description: | ||
| 3 | * @Autor: renchao | ||
| 4 | * @LastEditTime: 2024-01-31 09:38:51 | ||
| 5 | --> | ||
| 6 | <template> | ||
| 7 | <!-- 受理信息 --> | ||
| 8 | <div class="slxx"> | ||
| 9 | <el-form | ||
| 10 | :model="ruleForm" | ||
| 11 | :rules="rules" | ||
| 12 | v-Loading="loading" | ||
| 13 | ref="ruleForm" | ||
| 14 | :label-position="flag ? 'top' : ''" | ||
| 15 | :inline="flag" | ||
| 16 | label-width="180px"> | ||
| 17 | <div class="slxx_con" :class="flag ? 'formMarginBot0' : ''"> | ||
| 18 | <div class="slxx_title title-block"> | ||
| 19 | 申请业务信息 | ||
| 20 | <div class="triangle"></div> | ||
| 21 | </div> | ||
| 22 | <el-row :gutter="10"> | ||
| 23 | <el-col :span="8"> | ||
| 24 | <el-form-item label="业务号:"> | ||
| 25 | <el-input disabled v-model="ruleForm.flow.ywh"></el-input> | ||
| 26 | </el-form-item> | ||
| 27 | </el-col> | ||
| 28 | <el-col :span="8"> | ||
| 29 | <el-form-item label="受理人员:"> | ||
| 30 | <el-input disabled v-model="ruleForm.slsq.slry"></el-input> | ||
| 31 | </el-form-item> | ||
| 32 | </el-col> | ||
| 33 | <el-col :span="8"> | ||
| 34 | <el-form-item label="受理时间:"> | ||
| 35 | <el-input disabled v-model="ruleForm.slsq.slsj"></el-input> | ||
| 36 | </el-form-item> | ||
| 37 | </el-col> | ||
| 38 | </el-row> | ||
| 39 | <el-row :gutter="10"> | ||
| 40 | <el-col :span="8"> | ||
| 41 | <el-form-item label="权利类型:" prop="qllx"> | ||
| 42 | <el-input disabled v-model="ruleForm.sldy.qllxmc"></el-input> | ||
| 43 | </el-form-item> | ||
| 44 | </el-col> | ||
| 45 | <el-col :span="8"> | ||
| 46 | <el-form-item label="登记类型:" prop="djlx"> | ||
| 47 | <el-input disabled v-model="ruleForm.sldy.djlxmc"></el-input> | ||
| 48 | </el-form-item> | ||
| 49 | </el-col> | ||
| 50 | <el-col :span="8"> | ||
| 51 | <el-form-item label="登记情形:" prop="djqx"> | ||
| 52 | <el-input disabled v-model="ruleForm.slsq.djqxmc"></el-input> | ||
| 53 | </el-form-item> | ||
| 54 | </el-col> | ||
| 55 | </el-row> | ||
| 56 | <div class="slxx_title title-block"> | ||
| 57 | 抵押不动产情况 | ||
| 58 | <div class="triangle"></div> | ||
| 59 | </div> | ||
| 60 | |||
| 61 | <el-row :gutter="10"> | ||
| 62 | <el-col :span="8"> | ||
| 63 | <el-form-item label="权利人:"> | ||
| 64 | <el-input disabled v-model="ruleForm.ztQlxx.qlrmc"></el-input> | ||
| 65 | </el-form-item> | ||
| 66 | </el-col> | ||
| 67 | <el-col :span="8"> | ||
| 68 | <el-form-item label="证件种类:"> | ||
| 69 | <el-input disabled v-model="ruleForm.ztQlxx.qlrzjzl"></el-input> | ||
| 70 | </el-form-item> | ||
| 71 | </el-col> | ||
| 72 | <el-col :span="8"> | ||
| 73 | <el-form-item label="证件号:"> | ||
| 74 | <el-input disabled v-model="ruleForm.ztQlxx.qlrzjhm"></el-input> | ||
| 75 | </el-form-item> | ||
| 76 | </el-col> | ||
| 77 | </el-row> | ||
| 78 | <el-row :gutter="10"> | ||
| 79 | <el-col :span="8"> | ||
| 80 | <el-form-item label="权利类型:"> | ||
| 81 | <el-input disabled v-model="ruleForm.ztQlxx.qllxmc"></el-input> | ||
| 82 | </el-form-item> | ||
| 83 | </el-col> | ||
| 84 | <el-col :span="8"> | ||
| 85 | <el-form-item label="不动产权证号:"> | ||
| 86 | <el-input disabled v-model="ruleForm.ztQlxx.bdcqzh"></el-input> | ||
| 87 | </el-form-item> | ||
| 88 | </el-col> | ||
| 89 | <el-col :span="8"> | ||
| 90 | <el-form-item label="坐落:"> | ||
| 91 | <el-input disabled v-model="ruleForm.sldy.zl"></el-input> | ||
| 92 | </el-form-item> | ||
| 93 | </el-col> | ||
| 94 | </el-row> | ||
| 95 | <el-row :gutter="10"> | ||
| 96 | <el-col :span="8"> | ||
| 97 | <el-form-item label="不动产单元号:"> | ||
| 98 | <el-input disabled v-model="ruleForm.ztQlxx.bdcdyh"></el-input> | ||
| 99 | </el-form-item> | ||
| 100 | </el-col> | ||
| 101 | <el-col :span="8"> | ||
| 102 | <el-form-item label="权利性质:"> | ||
| 103 | <el-input disabled v-model="ruleForm.ztQlxx.qlxzmc"></el-input> | ||
| 104 | </el-form-item> | ||
| 105 | </el-col> | ||
| 106 | <el-col :span="8"> | ||
| 107 | <el-form-item label="权利用途:"> | ||
| 108 | <el-input disabled v-model="ruleForm.ztQlxx.qlytmc"></el-input> | ||
| 109 | </el-form-item> | ||
| 110 | </el-col> | ||
| 111 | </el-row> | ||
| 112 | |||
| 113 | <div class="slxx_title title-block"> | ||
| 114 | 抵押信息 | ||
| 115 | <div class="triangle"></div> | ||
| 116 | </div> | ||
| 117 | |||
| 118 | <el-row :gutter="10"> | ||
| 119 | <el-col :span="8"> | ||
| 120 | <el-form-item label="原不动产证号:"> | ||
| 121 | <el-input disabled v-model="ruleForm.sldy.ybdcqzsh"></el-input> | ||
| 122 | </el-form-item> | ||
| 123 | </el-col> | ||
| 124 | <el-col :span="8"> | ||
| 125 | <el-form-item label="抵押方式:"> | ||
| 126 | <el-radio-group disabled v-model="ruleForm.diyaq.dyfs"> | ||
| 127 | <el-radio label="1">一般抵押权</el-radio> | ||
| 128 | <el-radio label="2">最高额抵押权</el-radio> | ||
| 129 | </el-radio-group> | ||
| 130 | </el-form-item> | ||
| 131 | </el-col> | ||
| 132 | <el-col :span="8"> | ||
| 133 | <el-form-item label="抵押面积:"> | ||
| 134 | <div class="flex"> | ||
| 135 | <el-input | ||
| 136 | maxlength="12" | ||
| 137 | v-model="ruleForm.diyaq.dymj" | ||
| 138 | disabled></el-input> | ||
| 139 | <el-select disabled v-model="ruleForm.diyaq.mjdw" style="width: 68px"> | ||
| 140 | <el-option | ||
| 141 | v-for="item in dictData['A7']" | ||
| 142 | :key="item.dcode" | ||
| 143 | :label="item.dname" | ||
| 144 | :value="item.dcode"> | ||
| 145 | </el-option> | ||
| 146 | </el-select> | ||
| 147 | </div> | ||
| 148 | </el-form-item> | ||
| 149 | </el-col> | ||
| 150 | </el-row> | ||
| 151 | <el-row :gutter="10"> | ||
| 152 | <el-col :span="8"> | ||
| 153 | <el-form-item | ||
| 154 | label="是否禁止或者限制转让的约定:" | ||
| 155 | label-width="200px"> | ||
| 156 | <el-radio-group | ||
| 157 | v-model="ruleForm.diyaq.sfczjzhxz" | ||
| 158 | :disabled="!viewEdit || isJfOperation"> | ||
| 159 | <el-radio label="1">是</el-radio> | ||
| 160 | <el-radio label="0">否</el-radio> | ||
| 161 | </el-radio-group> | ||
| 162 | </el-form-item> | ||
| 163 | </el-col> | ||
| 164 | <el-col :span="8"> | ||
| 165 | <el-form-item | ||
| 166 | label="是否预告登记:"> | ||
| 167 | <el-radio-group v-model="ruleForm.diyaq.sfygdj" disabled> | ||
| 168 | <el-radio label="1">是</el-radio> | ||
| 169 | <el-radio label="0">否</el-radio> | ||
| 170 | </el-radio-group> | ||
| 171 | </el-form-item> | ||
| 172 | </el-col> | ||
| 173 | <el-col :span="8"> | ||
| 174 | <el-form-item label="债务履行期限:"> | ||
| 175 | <el-input | ||
| 176 | v-model="ruleForm.diyaq.dyqx" | ||
| 177 | :disabled="!viewEdit || isJfOperation"></el-input> | ||
| 178 | </el-form-item> | ||
| 179 | </el-col> | ||
| 180 | </el-row> | ||
| 181 | |||
| 182 | <el-row :gutter="10"> | ||
| 183 | <el-col :span="8" v-show="ruleForm.diyaq.dyfs == 1"> | ||
| 184 | <el-form-item label="被担保主债权数额:"> | ||
| 185 | <div style="display: flex"> | ||
| 186 | <el-input | ||
| 187 | v-model="ruleForm.diyaq.bdbzzqse" | ||
| 188 | :disabled="!viewEdit || isJfOperation" | ||
| 189 | style="width: 500%"></el-input> | ||
| 190 | <el-select | ||
| 191 | v-model="ruleForm.diyaq.jedw" | ||
| 192 | :disabled="!viewEdit || isJfOperation"> | ||
| 193 | <el-option | ||
| 194 | v-for="item in dictData['A57']" | ||
| 195 | :key="item.dcode" | ||
| 196 | :label="item.dname" | ||
| 197 | :value="item.dcode"> | ||
| 198 | </el-option> | ||
| 199 | </el-select> | ||
| 200 | </div> | ||
| 201 | </el-form-item> | ||
| 202 | </el-col> | ||
| 203 | |||
| 204 | <el-col :span="8" v-show="ruleForm.diyaq.dyfs == 2"> | ||
| 205 | <el-form-item label="最高债权额:"> | ||
| 206 | <el-input | ||
| 207 | v-model="ruleForm.diyaq.zgzqse" | ||
| 208 | :disabled="!viewEdit || isJfOperation"></el-input> | ||
| 209 | </el-form-item> | ||
| 210 | </el-col> | ||
| 211 | |||
| 212 | <el-col :span="8"> | ||
| 213 | <el-form-item label="债务履行起始时间:"> | ||
| 214 | <el-date-picker | ||
| 215 | v-model="ruleForm.diyaq.zwlxqssj" | ||
| 216 | :disabled="!viewEdit || isJfOperation" | ||
| 217 | type="date"> | ||
| 218 | </el-date-picker> | ||
| 219 | </el-form-item> | ||
| 220 | </el-col> | ||
| 221 | <el-col :span="8"> | ||
| 222 | <el-form-item label="债务履行结束时间:"> | ||
| 223 | <el-date-picker class="width100" | ||
| 224 | v-model="ruleForm.diyaq.zwlxjssj" | ||
| 225 | :disabled="!viewEdit || isJfOperation" | ||
| 226 | type="date"> | ||
| 227 | </el-date-picker> | ||
| 228 | </el-form-item> | ||
| 229 | </el-col> | ||
| 230 | </el-row> | ||
| 231 | <el-row> | ||
| 232 | <el-col :span="24"> | ||
| 233 | <el-form-item label="担保范围:"> | ||
| 234 | <el-input | ||
| 235 | v-model="ruleForm.diyaq.dbfw" | ||
| 236 | :disabled=" | ||
| 237 | (ruleForm.sldy.djlx == '300' || !viewEdit) || isJfOperation | ||
| 238 | "></el-input> | ||
| 239 | </el-form-item> | ||
| 240 | </el-col> | ||
| 241 | </el-row> | ||
| 242 | <el-row> | ||
| 243 | <el-col :span="24"> | ||
| 244 | <el-form-item label="最高债权确定事实和数额:"> | ||
| 245 | <el-input | ||
| 246 | v-model="ruleForm.diyaq.zgzqqdss" | ||
| 247 | :disabled="!viewEdit || isJfOperation"></el-input> | ||
| 248 | </el-form-item> | ||
| 249 | </el-col> | ||
| 250 | </el-row> | ||
| 251 | <el-row> | ||
| 252 | <el-col> | ||
| 253 | <el-form-item label="附记:" prop="fj"> | ||
| 254 | <el-input | ||
| 255 | type="textarea" | ||
| 256 | maxlength="500" | ||
| 257 | show-word-limit | ||
| 258 | v-model="ruleForm.diyaq.fj" | ||
| 259 | :disabled="!viewEdit || isJfOperation"></el-input> | ||
| 260 | </el-form-item> | ||
| 261 | </el-col> | ||
| 262 | </el-row> | ||
| 263 | |||
| 264 | <div class="slxx_title title-block"> | ||
| 265 | 抵押权人信息 | ||
| 266 | <div class="triangle"></div> | ||
| 267 | </div> | ||
| 268 | <el-row :gutter="10"> | ||
| 269 | <el-col :span="12"> | ||
| 270 | <el-form-item label="共有方式:"> | ||
| 271 | <el-radio-group | ||
| 272 | :disabled="!viewEdit" | ||
| 273 | v-model="ruleForm.sldy.gyfs"> | ||
| 274 | <el-radio label="0">单独所有</el-radio> | ||
| 275 | <el-radio label="1">共同共有</el-radio> | ||
| 276 | <el-radio label="2">按份所有</el-radio> | ||
| 277 | <el-radio label="3">其它共有</el-radio> | ||
| 278 | </el-radio-group> | ||
| 279 | </el-form-item> | ||
| 280 | </el-col> | ||
| 281 | <el-col :span="6" v-show="ruleForm.sldy.gyfs != '0'"> | ||
| 282 | <el-form-item label="是否分别持证:"> | ||
| 283 | <el-radio-group | ||
| 284 | v-model="ruleForm.sldy.sqfbcz" | ||
| 285 | :disabled="!viewEdit" | ||
| 286 | @input="updaterow()"> | ||
| 287 | <el-radio :label="1">是</el-radio> | ||
| 288 | <el-radio :label="0">否</el-radio> | ||
| 289 | </el-radio-group> | ||
| 290 | </el-form-item> | ||
| 291 | </el-col> | ||
| 292 | <el-col | ||
| 293 | :span="6" | ||
| 294 | v-show="ruleForm.sldy.sqfbcz == '0' && ruleForm.sldy.gyfs != '0'"> | ||
| 295 | <el-form-item label="持证人:"> | ||
| 296 | <el-select | ||
| 297 | v-model="czr" | ||
| 298 | placeholder="持证人" | ||
| 299 | :disabled="!viewEdit"> | ||
| 300 | <el-option | ||
| 301 | v-for="(item,index) in czrOptions" | ||
| 302 | :key="index" | ||
| 303 | :label="item.sqrmc" | ||
| 304 | :value="item.id"> | ||
| 305 | </el-option> | ||
| 306 | </el-select> | ||
| 307 | </el-form-item> | ||
| 308 | </el-col> | ||
| 309 | </el-row> | ||
| 310 | <qlrCommonTable | ||
| 311 | :tableData="ruleForm.qlrList" | ||
| 312 | :disabled="viewEdit" | ||
| 313 | @upDateQlrxxList="upDateQlrxxList" | ||
| 314 | :gyfs="ruleForm.sldy.gyfs" /> | ||
| 315 | <div class="slxx_title title-block"> | ||
| 316 | 抵押人信息 | ||
| 317 | <div class="triangle"></div> | ||
| 318 | </div> | ||
| 319 | <qlrCommonTable | ||
| 320 | :tableData="ruleForm.ywrList" | ||
| 321 | :disabled="viewEdit" | ||
| 322 | @upDateQlrxxList="upDateYwrxxList" /> | ||
| 323 | |||
| 324 | <div class="slxx_title title-block"> | ||
| 325 | 登记原因 | ||
| 326 | <div class="triangle"></div> | ||
| 327 | </div> | ||
| 328 | <el-row :gutter="10"> | ||
| 329 | <el-col> | ||
| 330 | <el-form-item | ||
| 331 | v-if="ruleForm.sldy.djlx == '400'" | ||
| 332 | label="注销抵押原因:" | ||
| 333 | prop="djyy"> | ||
| 334 | <el-input | ||
| 335 | class="textArea" | ||
| 336 | type="textarea" | ||
| 337 | :disabled="!viewEdit" | ||
| 338 | v-model="ruleForm.diyaq.zxdyyy"> | ||
| 339 | </el-input> | ||
| 340 | </el-form-item> | ||
| 341 | <el-form-item v-else label="登记原因:" prop="diyaq.djyy"> | ||
| 342 | <el-input | ||
| 343 | class="textArea" | ||
| 344 | type="textarea" | ||
| 345 | maxlength="500" | ||
| 346 | show-word-limit | ||
| 347 | :disabled="!viewEdit" | ||
| 348 | v-model="ruleForm.diyaq.djyy"> | ||
| 349 | </el-input> | ||
| 350 | </el-form-item> | ||
| 351 | </el-col> | ||
| 352 | </el-row> | ||
| 353 | </div> | ||
| 354 | <el-row class="btn" v-if="viewEdit"> | ||
| 355 | <el-form-item> | ||
| 356 | <el-button type="primary" @click="onSubmitClick()">保存</el-button> | ||
| 357 | </el-form-item> | ||
| 358 | </el-row> | ||
| 359 | </el-form> | ||
| 360 | </div> | ||
| 361 | </template> | ||
| 362 | <script> | ||
| 363 | import qlrCommonTable from "@/views/workflow/components/qlrCommonTable"; | ||
| 364 | import { Init, saveData } from "@/api/workflow/diyaqFlow.js"; | ||
| 365 | import { mapGetters } from "vuex"; | ||
| 366 | export default { | ||
| 367 | mounted () { | ||
| 368 | let that = this | ||
| 369 | this.loading = true | ||
| 370 | this.viewEdit = this.$parent.currentSelectTab.ableOperation; | ||
| 371 | this.propsParam = this.$attrs; | ||
| 372 | var formdata = new FormData(); | ||
| 373 | if (this.propsParam.djlx == "400") { | ||
| 374 | this.isJfOperation = true; | ||
| 375 | } | ||
| 376 | formdata.append("bsmSldy", this.propsParam.bsmSldy); | ||
| 377 | formdata.append("bsmSlsq", this.$route.query.bsmSlsq); | ||
| 378 | formdata.append("djlx", this.propsParam.djlx); | ||
| 379 | formdata.append("isEdit", this.viewEdit); | ||
| 380 | Init(formdata).then((res) => { | ||
| 381 | setTimeout(() => { | ||
| 382 | this.loading = false | ||
| 383 | }, 200) | ||
| 384 | if (res.code === 200 && res.result) { | ||
| 385 | that.ruleForm = res.result; | ||
| 386 | that.ruleForm.qlrList.forEach((item) => { | ||
| 387 | item.id = item.bsmSqr | ||
| 388 | if (item.sfczr == '1') { | ||
| 389 | that.czr = item.bsmSqr | ||
| 390 | } | ||
| 391 | }) | ||
| 392 | that.czrOptions = this.ruleForm.qlrList; | ||
| 393 | that.isSave = that.viewEdit | ||
| 394 | } else { | ||
| 395 | that.isSave = false | ||
| 396 | that.$confirm(res.message, '提示', { | ||
| 397 | cancelButtonText: '取消', | ||
| 398 | showConfirmButton: false, | ||
| 399 | type: 'warning' | ||
| 400 | }) | ||
| 401 | } | ||
| 402 | }).catch(() => { | ||
| 403 | this.loading = false | ||
| 404 | }) | ||
| 405 | }, | ||
| 406 | components: { qlrCommonTable }, | ||
| 407 | computed: { | ||
| 408 | ...mapGetters(["dictData", "flag"]), | ||
| 409 | }, | ||
| 410 | data () { | ||
| 411 | return { | ||
| 412 | isSave: true, | ||
| 413 | // 键名转换,方法默认是label和children进行树状渲染 | ||
| 414 | normalizer (node) { | ||
| 415 | //方法 | ||
| 416 | if (node.children == null || node.children == "null") { | ||
| 417 | delete node.children; | ||
| 418 | } | ||
| 419 | return { | ||
| 420 | id: node.dcode, | ||
| 421 | label: node.dname, | ||
| 422 | }; | ||
| 423 | }, | ||
| 424 | loading: false, | ||
| 425 | //表单是否可操作 | ||
| 426 | viewEdit: true, | ||
| 427 | disabled: true, | ||
| 428 | czrOptions: [], | ||
| 429 | czr: "", | ||
| 430 | ruleForm: { | ||
| 431 | slsq: {}, | ||
| 432 | ssQlxx: {}, | ||
| 433 | diyaq: {}, | ||
| 434 | gyfs: "", | ||
| 435 | }, | ||
| 436 | isJfOperation: false, | ||
| 437 | //传递参数 | ||
| 438 | propsParam: {}, | ||
| 439 | rules: { | ||
| 440 | 'diyaq.djyy': [ | ||
| 441 | { required: true, message: '请输入登记原因', trigger: 'blur' } | ||
| 442 | ] | ||
| 443 | } | ||
| 444 | } | ||
| 445 | }, | ||
| 446 | methods: { | ||
| 447 | /** | ||
| 448 | * @description: onSubmitClick | ||
| 449 | * @author: renchao | ||
| 450 | */ | ||
| 451 | onSubmitClick () { | ||
| 452 | let that = this; | ||
| 453 | if (this.ruleForm.qlrList.length == 0) { | ||
| 454 | this.$message({ | ||
| 455 | showClose: true, | ||
| 456 | message: "请确认抵押权人信息", | ||
| 457 | type: "error", | ||
| 458 | }); | ||
| 459 | return false; | ||
| 460 | } | ||
| 461 | if (this.ruleForm.sldy.gyfs == "0") { | ||
| 462 | if (this.ruleForm.qlrList.length > 1) { | ||
| 463 | this.$message({ | ||
| 464 | showClose: true, | ||
| 465 | message: "共有方式:单独所有,权利人只能是一个人", | ||
| 466 | type: "error", | ||
| 467 | }); | ||
| 468 | return false; | ||
| 469 | } | ||
| 470 | this.ruleForm.qlrList[0].sfczr = "1"; | ||
| 471 | } else { | ||
| 472 | if (this.ruleForm.qlrList.length <= 1) { | ||
| 473 | this.$message({ | ||
| 474 | showClose: true, | ||
| 475 | message: | ||
| 476 | "共有方式:共同所有,按份所有,其他所有,权利人必须是两个以上", | ||
| 477 | type: "error", | ||
| 478 | }); | ||
| 479 | return false; | ||
| 480 | } | ||
| 481 | //是否分别持证 | ||
| 482 | if (this.ruleForm.sldy.sqfbcz == "1") { | ||
| 483 | //是 | ||
| 484 | this.ruleForm.qlrList.forEach((item, index) => { | ||
| 485 | item.sfczr = "1"; | ||
| 486 | }); | ||
| 487 | } else { | ||
| 488 | if (that.czr === '') { | ||
| 489 | that.$message({ | ||
| 490 | showClose: true, | ||
| 491 | message: "请选择持证人", | ||
| 492 | type: "error" | ||
| 493 | }); | ||
| 494 | return false; | ||
| 495 | } | ||
| 496 | this.ruleForm.qlrList.forEach((item, index) => { | ||
| 497 | if (item.id == that.czr) { | ||
| 498 | item.sfczr = "1" | ||
| 499 | } else { | ||
| 500 | item.sfczr = "0" | ||
| 501 | } | ||
| 502 | }) | ||
| 503 | } | ||
| 504 | } | ||
| 505 | |||
| 506 | this.$refs['ruleForm'].validate((valid) => { | ||
| 507 | if (valid) { | ||
| 508 | that.$store.dispatch("user/refreshPage", false); | ||
| 509 | saveData(that.ruleForm, that.propsParam.djlx).then((res) => { | ||
| 510 | if (res.code === 200) { | ||
| 511 | that.$message({ | ||
| 512 | showClose: true, | ||
| 513 | message: "保存成功!", | ||
| 514 | type: "success", | ||
| 515 | }); | ||
| 516 | that.$store.dispatch("user/refreshPage", true); | ||
| 517 | } else { | ||
| 518 | that.$message({ | ||
| 519 | showClose: true, | ||
| 520 | message: res.message, | ||
| 521 | type: "error", | ||
| 522 | }); | ||
| 523 | } | ||
| 524 | }) | ||
| 525 | |||
| 526 | } else { | ||
| 527 | this.$message({ | ||
| 528 | showClose: true, | ||
| 529 | message: "请输入登记原因", | ||
| 530 | type: "error" | ||
| 531 | }) | ||
| 532 | return false | ||
| 533 | } | ||
| 534 | }) | ||
| 535 | }, | ||
| 536 | /** | ||
| 537 | * @description: 更新权利人信息 | ||
| 538 | * @param {*} val | ||
| 539 | * @author: renchao | ||
| 540 | */ | ||
| 541 | upDateQlrxxList (val) { | ||
| 542 | if (!_.isEqual(val, this.ruleForm.qlrList)) { | ||
| 543 | this.ruleForm.qlrList = _.cloneDeep(val); | ||
| 544 | this.czrOptions = this.ruleForm.qlrList; | ||
| 545 | } | ||
| 546 | this.num = 0 | ||
| 547 | this.ruleForm.qlrList.forEach(item => { | ||
| 548 | if (item.id == this.czr) { | ||
| 549 | this.num++ | ||
| 550 | } | ||
| 551 | }) | ||
| 552 | if (this.num == 0) { | ||
| 553 | this.czr = '' | ||
| 554 | } | ||
| 555 | |||
| 556 | }, | ||
| 557 | /** | ||
| 558 | * @description: 是否持证人变化 | ||
| 559 | * @author: renchao | ||
| 560 | */ | ||
| 561 | updaterow () { | ||
| 562 | this.czr = ""; | ||
| 563 | }, | ||
| 564 | /** | ||
| 565 | * @description: 更新义务人信息 | ||
| 566 | * @param {*} val | ||
| 567 | * @author: renchao | ||
| 568 | */ | ||
| 569 | upDateYwrxxList (val) { | ||
| 570 | if (!_.isEqual(val, this.ruleForm.ywrList)) { | ||
| 571 | this.ruleForm.ywrList = _.cloneDeep(val); | ||
| 572 | } | ||
| 573 | }, | ||
| 574 | }, | ||
| 575 | }; | ||
| 576 | </script> | ||
| 577 | <style scoped lang="scss"> | ||
| 578 | @import "~@/styles/public.scss"; | ||
| 579 | @import "~@/styles/slxx/slxx.scss"; | ||
| 580 | </style> |
src/views/ywbl/slsqxx/fdcq1/slxx.vue
deleted
100644 → 0
| 1 | <!-- | ||
| 2 | * @Description: 房屋多幢受理信息 | ||
| 3 | * @Autor: ssq | ||
| 4 | * @LastEditTime: 2024-01-31 10:11:41 | ||
| 5 | --> | ||
| 6 | <template> | ||
| 7 | <div class="slxx"> | ||
| 8 | <el-form | ||
| 9 | :model="ruleForm" | ||
| 10 | :rules="rules" | ||
| 11 | ref="ruleForm" | ||
| 12 | :label-position="flag ? 'top' : ''" | ||
| 13 | :inline="flag" | ||
| 14 | v-Loading="loading" | ||
| 15 | label-width="120px"> | ||
| 16 | <div class="slxx_con" :class="flag ? 'formMarginBot0' : ''"> | ||
| 17 | <div class="slxx_title title-block"> | ||
| 18 | 申请业务信息 | ||
| 19 | <div class="triangle"></div> | ||
| 20 | </div> | ||
| 21 | <el-row :gutter="10" v-if="ruleForm.slsq"> | ||
| 22 | <el-col :span="8"> | ||
| 23 | <el-form-item label="业务号:"> | ||
| 24 | <el-input disabled v-model="ruleForm.flow.ywh"></el-input> | ||
| 25 | </el-form-item> | ||
| 26 | </el-col> | ||
| 27 | <el-col :span="8"> | ||
| 28 | <el-form-item label="受理人员:"> | ||
| 29 | <el-input disabled v-model="ruleForm.slsq.slry"></el-input> | ||
| 30 | </el-form-item> | ||
| 31 | </el-col> | ||
| 32 | <el-col :span="8"> | ||
| 33 | <el-form-item label="受理时间:"> | ||
| 34 | <el-input disabled v-model="ruleForm.slsq.slsj"></el-input> | ||
| 35 | </el-form-item> | ||
| 36 | </el-col> | ||
| 37 | </el-row> | ||
| 38 | <el-row :gutter="10" v-if="ruleForm.slsq"> | ||
| 39 | <el-col :span="8"> | ||
| 40 | <el-form-item label="权利类型:"> | ||
| 41 | <el-input disabled v-model="ruleForm.sldy.qllxmc"></el-input> | ||
| 42 | </el-form-item> | ||
| 43 | </el-col> | ||
| 44 | <el-col :span="8"> | ||
| 45 | <el-form-item label="登记类型:"> | ||
| 46 | <el-input disabled v-model="ruleForm.sldy.djlxmc"></el-input> | ||
| 47 | </el-form-item> | ||
| 48 | </el-col> | ||
| 49 | <el-col :span="8"> | ||
| 50 | <el-form-item label="登记情形:"> | ||
| 51 | <el-input disabled v-model="ruleForm.slsq.djqxmc"></el-input> | ||
| 52 | </el-form-item> | ||
| 53 | </el-col> | ||
| 54 | </el-row> | ||
| 55 | <div class="slxx_title title-block"> | ||
| 56 | <el-row> | ||
| 57 | <el-col :span="20"> | ||
| 58 | 不动产单元情况 | ||
| 59 | </el-col> | ||
| 60 | <el-col :span="4" v-if="ruleForm.sldy.djlx=='500'"> | ||
| 61 | <el-form-item label="是否创建证书:" style="height:24px"> | ||
| 62 | <el-radio-group v-model="ruleForm.sldy.sfxysczs"> | ||
| 63 | <el-radio label="1">是</el-radio> | ||
| 64 | <el-radio label="0">否</el-radio> | ||
| 65 | </el-radio-group> | ||
| 66 | </el-form-item> | ||
| 67 | </el-col> | ||
| 68 | </el-row> | ||
| 69 | <div class="triangle"></div> | ||
| 70 | </div> | ||
| 71 | <el-row :gutter="10" v-if="ruleForm.qlxx"> | ||
| 72 | <el-col :span="8"> | ||
| 73 | <el-form-item label="原不动产权证号:"> | ||
| 74 | <el-input disabled v-model="ruleForm.sldy.ybdcqzsh"></el-input> | ||
| 75 | </el-form-item> | ||
| 76 | </el-col> | ||
| 77 | <el-col :span="8"> | ||
| 78 | <el-form-item label="不动产单元号:"> | ||
| 79 | <el-input disabled v-model="ruleForm.qlxx.bdcdyh"></el-input> | ||
| 80 | </el-form-item> | ||
| 81 | </el-col> | ||
| 82 | <el-col :span="8"> | ||
| 83 | <el-form-item label="坐落:"> | ||
| 84 | <el-input maxlength="100" disabled v-model="ruleForm.sldy.zl"></el-input> | ||
| 85 | </el-form-item> | ||
| 86 | </el-col> | ||
| 87 | </el-row> | ||
| 88 | <el-row :gutter="10" v-if="ruleForm.fdcq1"> | ||
| 89 | <el-col :span="8"> | ||
| 90 | <el-form-item label="宗地面积:"> | ||
| 91 | <div class="flex"> | ||
| 92 | <el-input disabled v-model="ruleForm.zdjbxx.zdmj"></el-input> | ||
| 93 | <el-select | ||
| 94 | disabled | ||
| 95 | v-model="ruleForm.zdjbxx.mjdw" | ||
| 96 | style="width: 20%"> | ||
| 97 | <el-option | ||
| 98 | v-for="item in dictData['A7']" | ||
| 99 | :key="item.dcode" | ||
| 100 | :label="item.dname" | ||
| 101 | :value="item.dcode"></el-option> | ||
| 102 | </el-select> | ||
| 103 | </div> | ||
| 104 | </el-form-item> | ||
| 105 | </el-col> | ||
| 106 | <el-col :span="8"> | ||
| 107 | <el-form-item label="土地性质:"> | ||
| 108 | <el-input disabled v-model="ruleForm.zdjbxx.qlxzmc"></el-input> | ||
| 109 | </el-form-item> | ||
| 110 | </el-col> | ||
| 111 | <el-col :span="8"> | ||
| 112 | <el-form-item label="土地使用权人:"> | ||
| 113 | <el-input disabled v-model="ruleForm.fdcq1.tdsyqr"></el-input> | ||
| 114 | </el-form-item> | ||
| 115 | </el-col> | ||
| 116 | </el-row> | ||
| 117 | <el-row :gutter="10" v-if="ruleForm.fdcq1"> | ||
| 118 | <el-col :span="8"> | ||
| 119 | <el-form-item label="独用土地面积:"> | ||
| 120 | <div class="flex"> | ||
| 121 | <el-input | ||
| 122 | maxlength="12" | ||
| 123 | v-model="ruleForm.fdcq1.dytdmj" | ||
| 124 | :disabled="!viewEdit" | ||
| 125 | oninput="value = (value.match(/^\d*(\.?\d{0,2})/g)[0]) || null"></el-input> | ||
| 126 | <el-select disabled v-model="mjdw" style="width: 68px"> | ||
| 127 | <el-option | ||
| 128 | v-for="item in dictData['A7']" | ||
| 129 | :key="item.dcode" | ||
| 130 | :label="item.dname" | ||
| 131 | :value="item.dcode"> | ||
| 132 | </el-option> | ||
| 133 | </el-select> | ||
| 134 | </div> | ||
| 135 | </el-form-item> | ||
| 136 | </el-col> | ||
| 137 | <el-col :span="8"> | ||
| 138 | <el-form-item label="分摊土地面积:"> | ||
| 139 | <div class="flex"> | ||
| 140 | <el-input | ||
| 141 | maxlength="12" | ||
| 142 | v-model="ruleForm.fdcq1.fttdmj" | ||
| 143 | :disabled="!viewEdit" | ||
| 144 | oninput="value = (value.match(/^\d*(\.?\d{0,2})/g)[0]) || null"></el-input> | ||
| 145 | <el-select disabled v-model="mjdw" style="width: 68px"> | ||
| 146 | <el-option | ||
| 147 | v-for="item in dictData['A7']" | ||
| 148 | :key="item.dcode" | ||
| 149 | :label="item.dname" | ||
| 150 | :value="item.dcode"> | ||
| 151 | </el-option> | ||
| 152 | </el-select> | ||
| 153 | </div> | ||
| 154 | </el-form-item> | ||
| 155 | </el-col> | ||
| 156 | <el-col :span="8"> | ||
| 157 | |||
| 158 | <el-form-item label="房地产交易价格:"> | ||
| 159 | <div class="flex"> | ||
| 160 | <el-input | ||
| 161 | maxlength="11" | ||
| 162 | :disabled="!viewEdit" | ||
| 163 | v-model="ruleForm.fdcq1.fdcjyjg" | ||
| 164 | style="width: 500%" | ||
| 165 | oninput="value = (value.match(/^\d*(\.?\d{0,2})/g)[0]) || null"></el-input> | ||
| 166 | <el-select :disabled="!viewEdit" v-model="ruleForm.fdcq1.jedw"> | ||
| 167 | <el-option | ||
| 168 | v-for="item in dictData['A57']" | ||
| 169 | :key="item.dcode" | ||
| 170 | :label="item.dname" | ||
| 171 | :value="item.dcode"></el-option> | ||
| 172 | </el-select> | ||
| 173 | </div> | ||
| 174 | </el-form-item> | ||
| 175 | </el-col> | ||
| 176 | </el-row> | ||
| 177 | <el-row :gutter="10"> | ||
| 178 | <el-col :span="24"> | ||
| 179 | <el-form-item label="附记:"> | ||
| 180 | <el-input | ||
| 181 | :disabled="!viewEdit" | ||
| 182 | v-model="ruleForm.fdcq1.fj" | ||
| 183 | type="textarea" | ||
| 184 | maxlength="500" | ||
| 185 | show-word-limit></el-input> | ||
| 186 | </el-form-item> | ||
| 187 | </el-col> | ||
| 188 | </el-row> | ||
| 189 | <div class="slxx_title title-block"> | ||
| 190 | 房屋多幢明细 | ||
| 191 | <div class="triangle"></div> | ||
| 192 | <fdcqxmTable | ||
| 193 | :ableOperation="viewEdit" | ||
| 194 | :tableData="ruleForm.fdcqxm" | ||
| 195 | @updateFdcwxmList="updateFdcwxmList" /> | ||
| 196 | <div class="slxx_title title-block"> | ||
| 197 | 土地用途 | ||
| 198 | <div class="triangle"></div> | ||
| 199 | </div> | ||
| 200 | <tdytTable | ||
| 201 | :ableOperation="viewEdit" | ||
| 202 | :tableData="ruleForm.tdytqxList" | ||
| 203 | @upDateTdytxxList="upDateTdytxxList" /> | ||
| 204 | <div class="slxx_title title-block"> | ||
| 205 | 权利人信息 | ||
| 206 | <div class="triangle"></div> | ||
| 207 | </div> | ||
| 208 | <el-row :gutter="10"> | ||
| 209 | <el-col :span="14" v-if="ruleForm.qlxx"> | ||
| 210 | <el-form-item label="共有方式:"> | ||
| 211 | <el-radio-group | ||
| 212 | :disabled="!viewEdit" | ||
| 213 | v-model="ruleForm.sldy.gyfs"> | ||
| 214 | <el-radio label="0">单独所有</el-radio> | ||
| 215 | <el-radio label="1">共同共有</el-radio> | ||
| 216 | <el-radio label="2">按份所有</el-radio> | ||
| 217 | <el-radio label="3">其它共有</el-radio> | ||
| 218 | </el-radio-group> | ||
| 219 | </el-form-item> | ||
| 220 | </el-col> | ||
| 221 | <el-col :span="5" v-show="ruleForm.sldy.gyfs != '0'"> | ||
| 222 | <el-form-item label="是否分别持证:"> | ||
| 223 | <el-radio-group | ||
| 224 | v-model="ruleForm.sldy.sqfbcz" | ||
| 225 | :disabled="!viewEdit" | ||
| 226 | @input="updaterow()"> | ||
| 227 | <el-radio :label="1">是</el-radio> | ||
| 228 | <el-radio :label="0">否</el-radio> | ||
| 229 | </el-radio-group> | ||
| 230 | </el-form-item> | ||
| 231 | </el-col> | ||
| 232 | <el-col | ||
| 233 | :span="5" | ||
| 234 | v-show="ruleForm.sldy.sqfbcz == '0' && ruleForm.sldy.gyfs != '0'"> | ||
| 235 | <el-form-item label="持证人:"> | ||
| 236 | <el-select | ||
| 237 | v-model="czr" | ||
| 238 | placeholder="持证人" | ||
| 239 | :disabled="!viewEdit"> | ||
| 240 | <el-option | ||
| 241 | v-for="(item,index) in czrOptions" | ||
| 242 | :key="index" | ||
| 243 | :label="item.sqrmc" | ||
| 244 | :value="item.id"></el-option> | ||
| 245 | </el-select> | ||
| 246 | </el-form-item> | ||
| 247 | </el-col> | ||
| 248 | </el-row> | ||
| 249 | <qlrCommonTable | ||
| 250 | @upDateQlrxxList="upDateQlrxxList" | ||
| 251 | :disabled="viewEdit" | ||
| 252 | :tableData="ruleForm.qlrList" | ||
| 253 | :gyfs="ruleForm.sldy.gyfs" /> | ||
| 254 | |||
| 255 | <div v-if="ruleForm.qlxx.djlx == '200'"> | ||
| 256 | <div class="slxx_title title-block"> | ||
| 257 | 义务人信息 | ||
| 258 | <div class="triangle"></div> | ||
| 259 | </div> | ||
| 260 | <ywrCommonTable | ||
| 261 | v-if="ruleForm.qlxx" | ||
| 262 | :disabled="viewEdit" | ||
| 263 | @upDateQlrxxList="upDateYwrxxList" | ||
| 264 | :tableData="ruleForm.ywrList" | ||
| 265 | :gyfs="ruleForm.qlxx.gyfs" /> | ||
| 266 | |||
| 267 | </div> | ||
| 268 | <div class="slxx_title title-block"> | ||
| 269 | 登记原因 | ||
| 270 | <div class="triangle"></div> | ||
| 271 | </div> | ||
| 272 | <el-row :gutter="10"> | ||
| 273 | <el-col> | ||
| 274 | <el-form-item v-if="ruleForm.sldy" label="登记原因:" prop="fdcq1.djyy"> | ||
| 275 | <el-input | ||
| 276 | class="textArea" | ||
| 277 | type="textarea" | ||
| 278 | maxlength="500" | ||
| 279 | show-word-limit | ||
| 280 | :disabled="!viewEdit" | ||
| 281 | v-model="ruleForm.fdcq1.djyy"></el-input> | ||
| 282 | </el-form-item> | ||
| 283 | </el-col> | ||
| 284 | </el-row> | ||
| 285 | </div> | ||
| 286 | </div> | ||
| 287 | <el-row class="btn" v-if="isSave"> | ||
| 288 | <el-form-item> | ||
| 289 | <el-button type="primary" @click="onSubmit">保存</el-button> | ||
| 290 | </el-form-item> | ||
| 291 | </el-row> | ||
| 292 | </el-form> | ||
| 293 | </div> | ||
| 294 | </template> | ||
| 295 | <script> | ||
| 296 | import ywmix from "@/views/ywbl/mixin/index"; | ||
| 297 | import qlrCommonTable from "@/views/workflow/components/qlrCommonTable"; | ||
| 298 | import ywrCommonTable from "@/views/workflow/components/ywrCommonTable"; | ||
| 299 | import fdcqxmTable from "@/views/workflow/components/fdcqxmTable"; | ||
| 300 | import tdytTable from "@/views/workflow/components/tdytTable"; | ||
| 301 | import { Init, saveData } from "@/api/workflow/fwsyq1Flow.js"; | ||
| 302 | import { mapGetters } from "vuex"; | ||
| 303 | export default { | ||
| 304 | mixins: [ywmix], | ||
| 305 | mounted () { | ||
| 306 | let that = this | ||
| 307 | this.loading = true | ||
| 308 | this.viewEdit = this.$parent.currentSelectTab.ableOperation; | ||
| 309 | this.propsParam = this.$attrs; | ||
| 310 | var formdata = new FormData(); | ||
| 311 | formdata.append("bsmSldy", this.propsParam.bsmSldy); | ||
| 312 | formdata.append("djlx", this.propsParam.djlx); | ||
| 313 | formdata.append("isEdit", this.viewEdit); | ||
| 314 | Init(formdata).then((res) => { | ||
| 315 | setTimeout(() => { | ||
| 316 | this.loading = false | ||
| 317 | }, 200) | ||
| 318 | if (res.code === 200 && res.result) { | ||
| 319 | that.ruleForm = { | ||
| 320 | ...res.result, | ||
| 321 | ...res.result.qlxxdatas, | ||
| 322 | }; | ||
| 323 | that.ruleForm.qlrList.forEach((item) => { | ||
| 324 | item.id = item.bsmSqr | ||
| 325 | if (item.sfczr == '1') { | ||
| 326 | that.czr = item.bsmSqr | ||
| 327 | } | ||
| 328 | }); | ||
| 329 | that.czrOptions = that.ruleForm.qlrList; | ||
| 330 | that.isSave = this.viewEdit | ||
| 331 | } else { | ||
| 332 | that.isSave = false | ||
| 333 | that.$confirm(res.message, '提示', { | ||
| 334 | cancelButtonText: '取消', | ||
| 335 | showConfirmButton: false, | ||
| 336 | type: 'warning' | ||
| 337 | }) | ||
| 338 | } | ||
| 339 | }).catch(() => { | ||
| 340 | this.loading = false | ||
| 341 | }) | ||
| 342 | }, | ||
| 343 | components: { qlrCommonTable, tdytTable, fdcqxmTable, ywrCommonTable }, | ||
| 344 | computed: { | ||
| 345 | ...mapGetters(["dictData", "flag"]), | ||
| 346 | }, | ||
| 347 | data () { | ||
| 348 | return { | ||
| 349 | isSave: true, | ||
| 350 | loading: false, | ||
| 351 | disabled: true, | ||
| 352 | tdytOption: [], | ||
| 353 | czrOptions: [], | ||
| 354 | mjdw: "1", | ||
| 355 | czr: "", | ||
| 356 | ruleForm: { | ||
| 357 | flow: { | ||
| 358 | ywh: "", | ||
| 359 | }, | ||
| 360 | qlxx: { | ||
| 361 | mj: "", | ||
| 362 | }, | ||
| 363 | sldy: { | ||
| 364 | gyfs: "", | ||
| 365 | }, | ||
| 366 | slsq: {}, | ||
| 367 | fdcq1: { | ||
| 368 | zyjzmj: "", | ||
| 369 | ftjzmj: "", | ||
| 370 | }, | ||
| 371 | zdjbxx: { | ||
| 372 | ghytmc: "", | ||
| 373 | }, | ||
| 374 | }, | ||
| 375 | //传递参数 | ||
| 376 | propsParam: this.$attrs, | ||
| 377 | //表单是否可操作 | ||
| 378 | viewEdit: false, | ||
| 379 | rules: { | ||
| 380 | 'fdcq1.djyy': [ | ||
| 381 | { required: true, message: '请输入登记原因', trigger: 'blur' } | ||
| 382 | ] | ||
| 383 | } | ||
| 384 | } | ||
| 385 | }, | ||
| 386 | methods: { | ||
| 387 | /** | ||
| 388 | * @description: updateFdcwxmList | ||
| 389 | * @author: renchao | ||
| 390 | */ | ||
| 391 | updateFdcwxmList (val) { | ||
| 392 | this.ruleForm.fdcqxm && (this.ruleForm.fdcqxm = _.cloneDeep(val)); | ||
| 393 | this.key++; | ||
| 394 | }, | ||
| 395 | /** | ||
| 396 | * @description: 更新土地用途信息 | ||
| 397 | * @param {*} val | ||
| 398 | * @author: renchao | ||
| 399 | */ | ||
| 400 | upDateTdytxxList (val) { | ||
| 401 | this.ruleForm.tdytqxList && (this.ruleForm.tdytqxList = _.cloneDeep(val)); | ||
| 402 | this.key++; | ||
| 403 | }, | ||
| 404 | /** | ||
| 405 | * @description: 更新权利人信息 | ||
| 406 | * @param {*} val | ||
| 407 | * @author: renchao | ||
| 408 | */ | ||
| 409 | upDateQlrxxList (val) { | ||
| 410 | if (!_.isEqual(val, this.ruleForm.qlrList)) { | ||
| 411 | this.ruleForm.qlrList = _.cloneDeep(val); | ||
| 412 | this.czrOptions = this.ruleForm.qlrList; | ||
| 413 | } | ||
| 414 | this.num = 0 | ||
| 415 | this.ruleForm.qlrList.forEach(item => { | ||
| 416 | if (item.id == this.czr) { | ||
| 417 | this.num++ | ||
| 418 | } | ||
| 419 | }) | ||
| 420 | if (this.num == 0) { | ||
| 421 | this.czr = '' | ||
| 422 | } | ||
| 423 | }, | ||
| 424 | /** | ||
| 425 | * @description: 是否持证人变化 | ||
| 426 | * @param {*} val | ||
| 427 | * @author: renchao | ||
| 428 | */ | ||
| 429 | updaterow () { | ||
| 430 | this.czr = ""; | ||
| 431 | }, | ||
| 432 | /** | ||
| 433 | * @description: 更新权利人信息 | ||
| 434 | * @param {*} val | ||
| 435 | * @author: renchao | ||
| 436 | */ | ||
| 437 | upDateYwrxxList (val) { | ||
| 438 | this.ruleForm.ywrList = _.cloneDeep(val); | ||
| 439 | }, | ||
| 440 | /** | ||
| 441 | * @description: onSubmit | ||
| 442 | * @author: renchao | ||
| 443 | */ | ||
| 444 | onSubmit () { | ||
| 445 | let that = this; | ||
| 446 | let arr = this.ruleForm.tdytqxList.filter((item) => !item.yt); | ||
| 447 | |||
| 448 | let jzmjArr = this.ruleForm.fdcqxm.filter((item) => { | ||
| 449 | return item.jzmj && item.jzmj !== ''; | ||
| 450 | }); | ||
| 451 | if (jzmjArr.length < this.ruleForm.fdcqxm.length) { | ||
| 452 | this.$message({ | ||
| 453 | showClose: true, | ||
| 454 | message: "请检查房屋多幢明细建筑面积", | ||
| 455 | type: "error", | ||
| 456 | }); | ||
| 457 | return false; | ||
| 458 | } | ||
| 459 | if (arr.length > 0) { | ||
| 460 | this.$message({ | ||
| 461 | showClose: true, | ||
| 462 | message: "土地用途不能为空", | ||
| 463 | type: "error", | ||
| 464 | }); | ||
| 465 | return false; | ||
| 466 | } | ||
| 467 | if (this.ruleForm.qlrList.length == 0) { | ||
| 468 | this.$message({ | ||
| 469 | showClose: true, | ||
| 470 | message: "请确认权利人信息", | ||
| 471 | type: "error", | ||
| 472 | }); | ||
| 473 | return false; | ||
| 474 | } | ||
| 475 | if (this.ruleForm.sldy.gyfs == "0") { | ||
| 476 | if (this.ruleForm.qlrList.length > 1) { | ||
| 477 | this.$message({ | ||
| 478 | showClose: true, | ||
| 479 | message: "共有方式:单独所有,权利人只能是一个人", | ||
| 480 | type: "error", | ||
| 481 | }); | ||
| 482 | return false; | ||
| 483 | } | ||
| 484 | this.ruleForm.qlrList[0].sfczr = "1"; | ||
| 485 | } else { | ||
| 486 | if (this.ruleForm.qlrList.length <= 1) { | ||
| 487 | this.$message({ | ||
| 488 | showClose: true, | ||
| 489 | message: | ||
| 490 | "共有方式:共同所有,按份所有,其他所有,权利人必须是两个以上", | ||
| 491 | type: "error", | ||
| 492 | }); | ||
| 493 | return false; | ||
| 494 | } | ||
| 495 | //是否分别持证 | ||
| 496 | if (this.ruleForm.sldy.sqfbcz == "1") { | ||
| 497 | //是 | ||
| 498 | this.ruleForm.qlrList.forEach((item, index) => { | ||
| 499 | item.sfczr = "1"; | ||
| 500 | }); | ||
| 501 | } else { | ||
| 502 | if (that.czr === '') { | ||
| 503 | that.$message({ | ||
| 504 | showClose: true, | ||
| 505 | message: "请选择持证人", | ||
| 506 | type: "error", | ||
| 507 | }); | ||
| 508 | return false; | ||
| 509 | } | ||
| 510 | this.ruleForm.qlrList.forEach(item => { | ||
| 511 | if (item.id == that.czr) { | ||
| 512 | item.sfczr = "1" | ||
| 513 | } else { | ||
| 514 | item.sfczr = "0" | ||
| 515 | } | ||
| 516 | }) | ||
| 517 | } | ||
| 518 | } | ||
| 519 | |||
| 520 | this.$refs['ruleForm'].validate((valid) => { | ||
| 521 | if (valid) { | ||
| 522 | that.$store.dispatch("user/refreshPage", false); | ||
| 523 | saveData(this.ruleForm).then((res) => { | ||
| 524 | if (res.code === 200) { | ||
| 525 | this.$message({ | ||
| 526 | showClose: true, | ||
| 527 | message: "保存成功!", | ||
| 528 | type: "success", | ||
| 529 | }); | ||
| 530 | that.$store.dispatch("user/refreshPage", true); | ||
| 531 | } else { | ||
| 532 | that.$message({ | ||
| 533 | showClose: true, | ||
| 534 | message: res.message, | ||
| 535 | type: "error" | ||
| 536 | }) | ||
| 537 | } | ||
| 538 | }) | ||
| 539 | } else { | ||
| 540 | that.$message({ | ||
| 541 | showClose: true, | ||
| 542 | message: "请输入登记原因", | ||
| 543 | type: "error" | ||
| 544 | }) | ||
| 545 | return false | ||
| 546 | } | ||
| 547 | }) | ||
| 548 | } | ||
| 549 | } | ||
| 550 | } | ||
| 551 | </script> | ||
| 552 | <style scoped lang="scss"> | ||
| 553 | @import "~@/styles/public.scss"; | ||
| 554 | @import "~@/styles/slxx/slxx.scss"; | ||
| 555 | </style> |
src/views/ywbl/slsqxx/fdcq2/slxx.vue
deleted
100644 → 0
| 1 | <!-- | ||
| 2 | * @Description: 受理信息 | ||
| 3 | * @Autor: renchao | ||
| 4 | * @LastEditTime: 2024-01-31 10:09:01 | ||
| 5 | --> | ||
| 6 | <template> | ||
| 7 | <div class="slxx"> | ||
| 8 | <el-form | ||
| 9 | :model="ruleForm" | ||
| 10 | :rules="rules" | ||
| 11 | ref="ruleForm" | ||
| 12 | v-Loading="loading" | ||
| 13 | :label-position="flag ? 'top' : ''" | ||
| 14 | :inline="flag" | ||
| 15 | label-width="120px"> | ||
| 16 | <div class="slxx_con" :class="flag ? 'formMarginBot0' : ''"> | ||
| 17 | <div class="slxx_title title-block"> | ||
| 18 | 申请业务信息 | ||
| 19 | <div class="triangle"></div> | ||
| 20 | </div> | ||
| 21 | <el-row :gutter="10" v-if="ruleForm.slsq"> | ||
| 22 | <el-col :span="8"> | ||
| 23 | <el-form-item label="业务号:"> | ||
| 24 | <el-input disabled v-model="ruleForm.flow.ywh"></el-input> | ||
| 25 | </el-form-item> | ||
| 26 | </el-col> | ||
| 27 | <el-col :span="8"> | ||
| 28 | <el-form-item label="受理人员:"> | ||
| 29 | <el-input disabled v-model="ruleForm.slsq.slry"></el-input> | ||
| 30 | </el-form-item> | ||
| 31 | </el-col> | ||
| 32 | <el-col :span="8"> | ||
| 33 | <el-form-item label="受理时间:"> | ||
| 34 | <el-input disabled v-model="ruleForm.slsq.slsj"></el-input> | ||
| 35 | </el-form-item> | ||
| 36 | </el-col> | ||
| 37 | </el-row> | ||
| 38 | <el-row :gutter="10" v-if="ruleForm.slsq"> | ||
| 39 | <el-col :span="8"> | ||
| 40 | <el-form-item label="权利类型:"> | ||
| 41 | <el-input disabled v-model="ruleForm.sldy.qllxmc"></el-input> | ||
| 42 | </el-form-item> | ||
| 43 | </el-col> | ||
| 44 | <el-col :span="8"> | ||
| 45 | <el-form-item label="登记类型:"> | ||
| 46 | <el-input disabled v-model="ruleForm.sldy.djlxmc"></el-input> | ||
| 47 | </el-form-item> | ||
| 48 | </el-col> | ||
| 49 | <el-col :span="8"> | ||
| 50 | <el-form-item label="登记情形:"> | ||
| 51 | <el-input disabled v-model="ruleForm.slsq.djqxmc"></el-input> | ||
| 52 | </el-form-item> | ||
| 53 | </el-col> | ||
| 54 | </el-row> | ||
| 55 | <div class="slxx_title title-block"> | ||
| 56 | <el-row> | ||
| 57 | <el-col :span="20"> | ||
| 58 | 不动产单元情况 | ||
| 59 | </el-col> | ||
| 60 | <el-col :span="4" v-if="ruleForm.sldy.djlx=='500'"> | ||
| 61 | <el-form-item label="是否创建证书:" style="height:24px"> | ||
| 62 | <el-radio-group v-model="ruleForm.sldy.sfxysczs"> | ||
| 63 | <el-radio label="1">是</el-radio> | ||
| 64 | <el-radio label="0">否</el-radio> | ||
| 65 | </el-radio-group> | ||
| 66 | </el-form-item> | ||
| 67 | </el-col> | ||
| 68 | </el-row> | ||
| 69 | <div class="triangle"></div> | ||
| 70 | </div> | ||
| 71 | <el-row :gutter="10" v-if="ruleForm.qlxx"> | ||
| 72 | <el-col :span="8"> | ||
| 73 | <el-form-item label="原不动产权证号:"> | ||
| 74 | <el-input disabled v-model="ruleForm.sldy.ybdcqzsh"></el-input> | ||
| 75 | </el-form-item> | ||
| 76 | </el-col> | ||
| 77 | <el-col :span="8"> | ||
| 78 | <el-form-item label="不动产单元号:"> | ||
| 79 | <el-input disabled v-model="ruleForm.sldy.bdcdyh"></el-input> | ||
| 80 | </el-form-item> | ||
| 81 | </el-col> | ||
| 82 | <el-col :span="8"> | ||
| 83 | <el-form-item label="坐落:"> | ||
| 84 | <el-input maxlength="100" :disabled="!viewEdit" v-model="ruleForm.sldy.zl"></el-input> | ||
| 85 | </el-form-item> | ||
| 86 | </el-col> | ||
| 87 | </el-row> | ||
| 88 | <el-row :gutter="10" v-if="ruleForm.fdcq2"> | ||
| 89 | <el-col :span="8"> | ||
| 90 | <el-form-item label="宗地面积:"> | ||
| 91 | <div class="flex"> | ||
| 92 | <el-input :disabled="!viewEdit" v-model="ruleForm.zdjbxx.zdmj"></el-input> | ||
| 93 | <el-select | ||
| 94 | disabled | ||
| 95 | v-model="ruleForm.zdjbxx.mjdw" | ||
| 96 | style="width: 68px"> | ||
| 97 | <el-option | ||
| 98 | v-for="item in dictData['A7']" | ||
| 99 | :key="item.dcode" | ||
| 100 | :label="item.dname" | ||
| 101 | :value="item.dcode"> | ||
| 102 | </el-option> | ||
| 103 | </el-select> | ||
| 104 | </div> | ||
| 105 | </el-form-item> | ||
| 106 | </el-col> | ||
| 107 | <el-col :span="8"> | ||
| 108 | <el-form-item label="土地使用权人:"> | ||
| 109 | <el-input :disabled="!viewEdit" v-model="ruleForm.fdcq2.tdsyqr"></el-input> | ||
| 110 | </el-form-item> | ||
| 111 | </el-col> | ||
| 112 | <el-col :span="8"> | ||
| 113 | <el-form-item label="土地性质:"> | ||
| 114 | <treeselect | ||
| 115 | :disabled="!viewEdit" | ||
| 116 | v-model="ruleForm.fdcq2.tdxz" | ||
| 117 | noOptionsText="暂无数据" | ||
| 118 | placeholder="" | ||
| 119 | :normalizer="normalizer" | ||
| 120 | :default-expand-level="1" | ||
| 121 | :show-count="true" | ||
| 122 | :options="dictData['A9']" /> | ||
| 123 | </el-form-item> | ||
| 124 | </el-col> | ||
| 125 | </el-row> | ||
| 126 | <el-row :gutter="10" v-if="ruleForm.qlxx"> | ||
| 127 | <el-col :span="8"> | ||
| 128 | <el-form-item label="独用土地面积:"> | ||
| 129 | <div class="flex"> | ||
| 130 | <el-input | ||
| 131 | maxlength="12" | ||
| 132 | v-model="ruleForm.fdcq2.dytdmj" | ||
| 133 | :disabled="!viewEdit" | ||
| 134 | oninput="value = (value.match(/^\d*(\.?\d{0,2})/g)[0]) || null"></el-input> | ||
| 135 | <el-select disabled v-model="mjdw" style="width: 68px"> | ||
| 136 | <el-option | ||
| 137 | v-for="item in dictData['A7']" | ||
| 138 | :key="item.dcode" | ||
| 139 | :label="item.dname" | ||
| 140 | :value="item.dcode"> | ||
| 141 | </el-option> | ||
| 142 | </el-select> | ||
| 143 | </div> | ||
| 144 | </el-form-item> | ||
| 145 | </el-col> | ||
| 146 | <el-col :span="8"> | ||
| 147 | <el-form-item label="分摊土地面积:"> | ||
| 148 | <div class="flex"> | ||
| 149 | <el-input | ||
| 150 | maxlength="12" | ||
| 151 | v-model="ruleForm.fdcq2.fttdmj" | ||
| 152 | :disabled="!viewEdit" | ||
| 153 | oninput="value = (value.match(/^\d*(\.?\d{0,2})/g)[0]) || null"></el-input> | ||
| 154 | <el-select disabled v-model="mjdw" style="width: 68px"> | ||
| 155 | <el-option | ||
| 156 | v-for="item in dictData['A7']" | ||
| 157 | :key="item.dcode" | ||
| 158 | :label="item.dname" | ||
| 159 | :value="item.dcode"> | ||
| 160 | </el-option> | ||
| 161 | </el-select> | ||
| 162 | </div> | ||
| 163 | </el-form-item> | ||
| 164 | </el-col> | ||
| 165 | <el-col :span="8"> | ||
| 166 | <el-form-item label="房屋性质:"> | ||
| 167 | <el-select v-model="ruleForm.fdcq2.fwxz" :disabled="!viewEdit"> | ||
| 168 | <el-option | ||
| 169 | v-for="item in dictData['A19']" | ||
| 170 | :key="item.dcode" | ||
| 171 | :label="item.dname" | ||
| 172 | :value="item.dcode"> | ||
| 173 | </el-option> | ||
| 174 | </el-select> | ||
| 175 | </el-form-item> | ||
| 176 | </el-col> | ||
| 177 | </el-row> | ||
| 178 | <el-row :gutter="10" v-if="ruleForm.qlxx"> | ||
| 179 | <el-col :span="8"> | ||
| 180 | <el-form-item label="房屋用途:"> | ||
| 181 | <treeselect | ||
| 182 | v-model="ruleForm.fdcq2.ghyt" | ||
| 183 | :disabled="!viewEdit" | ||
| 184 | noOptionsText="" | ||
| 185 | placeholder="" | ||
| 186 | :normalizer="normalizer" | ||
| 187 | :show-count="true" | ||
| 188 | :options="dictData['A17']" /> | ||
| 189 | </el-form-item> | ||
| 190 | </el-col> | ||
| 191 | <el-col :span="8"> | ||
| 192 | <el-form-item label="房屋结构:"> | ||
| 193 | <el-select v-model="ruleForm.fdcq2.fwjg" :disabled="!viewEdit"> | ||
| 194 | <el-option | ||
| 195 | v-for="item in dictData['A46']" | ||
| 196 | :key="item.dcode" | ||
| 197 | :label="item.dname" | ||
| 198 | :value="item.dcode"> | ||
| 199 | </el-option> | ||
| 200 | </el-select> | ||
| 201 | </el-form-item> | ||
| 202 | </el-col> | ||
| 203 | <el-col :span="8"> | ||
| 204 | <el-form-item label="竣工时间:"> | ||
| 205 | <el-date-picker | ||
| 206 | v-model="ruleForm.fdcq2.jgsj" | ||
| 207 | class="width100" | ||
| 208 | type="date" | ||
| 209 | placeholder="选择日期" | ||
| 210 | value-format="yyyy-MM-dd" | ||
| 211 | :disabled="!viewEdit"></el-date-picker> | ||
| 212 | </el-form-item> | ||
| 213 | </el-col> | ||
| 214 | </el-row> | ||
| 215 | <el-row :gutter="10" v-if="ruleForm.qlxx"> | ||
| 216 | <el-col :span="8"> | ||
| 217 | <el-form-item label="所在层:"> | ||
| 218 | <el-input | ||
| 219 | maxlength="20" | ||
| 220 | v-model="ruleForm.fdcq2.szc" | ||
| 221 | :disabled="!viewEdit"></el-input> | ||
| 222 | </el-form-item> | ||
| 223 | </el-col> | ||
| 224 | <el-col :span="8"> | ||
| 225 | <el-form-item label="总层数:"> | ||
| 226 | <el-input | ||
| 227 | maxlength="4" | ||
| 228 | :disabled="!viewEdit" | ||
| 229 | v-model.number="ruleForm.fdcq2.zcs" | ||
| 230 | oninput="value=value.replace(/[^0-9]/g,'')"></el-input> | ||
| 231 | </el-form-item> | ||
| 232 | </el-col> | ||
| 233 | <el-col :span="8"> | ||
| 234 | <el-form-item label="房地产交易价格:"> | ||
| 235 | <div class="flex"> | ||
| 236 | <el-input | ||
| 237 | maxlength="11" | ||
| 238 | v-model="ruleForm.fdcq2.fdcjyjg" | ||
| 239 | style="width: 500%" | ||
| 240 | :disabled="!viewEdit" | ||
| 241 | oninput="value = (value.match(/^\d*(\.?\d{0,2})/g)[0]) || null"></el-input> | ||
| 242 | <el-select v-model="ruleForm.fdcq2.jedw" :disabled="!viewEdit"> | ||
| 243 | <el-option | ||
| 244 | v-for="item in dictData['A57']" | ||
| 245 | :key="item.dcode" | ||
| 246 | :label="item.dname" | ||
| 247 | :value="item.dcode"> | ||
| 248 | </el-option> | ||
| 249 | </el-select> | ||
| 250 | </div> | ||
| 251 | </el-form-item> | ||
| 252 | </el-col> | ||
| 253 | </el-row> | ||
| 254 | <el-row :gutter="10" v-if="ruleForm.fdcq2"> | ||
| 255 | <el-col :span="8"> | ||
| 256 | <el-form-item label="建筑面积:"> | ||
| 257 | <div class="flex"> | ||
| 258 | <el-input | ||
| 259 | maxlength="12" | ||
| 260 | v-model="ruleForm.fdcq2.jzmj" | ||
| 261 | :disabled="!viewEdit" | ||
| 262 | oninput="value = (value.match(/^\d*(\.?\d{0,2})/g)[0]) || null"></el-input> | ||
| 263 | <el-select disabled v-model="mjdw" style="width: 68px"> | ||
| 264 | <el-option | ||
| 265 | v-for="item in dictData['A7']" | ||
| 266 | :key="item.dcode" | ||
| 267 | :label="item.dname" | ||
| 268 | :value="item.dcode"> | ||
| 269 | </el-option> | ||
| 270 | </el-select> | ||
| 271 | </div> | ||
| 272 | </el-form-item> | ||
| 273 | </el-col> | ||
| 274 | <el-col :span="8"> | ||
| 275 | <el-form-item label="专有建筑面积:"> | ||
| 276 | <div class="flex"> | ||
| 277 | <el-input | ||
| 278 | maxlength="12" | ||
| 279 | v-model="ruleForm.fdcq2.zyjzmj" | ||
| 280 | :disabled="!viewEdit" | ||
| 281 | oninput="value = (value.match(/^\d*(\.?\d{0,2})/g)[0]) || null"></el-input> | ||
| 282 | <el-select disabled v-model="mjdw" style="width: 68px"> | ||
| 283 | <el-option | ||
| 284 | v-for="item in dictData['A7']" | ||
| 285 | :key="item.dcode" | ||
| 286 | :label="item.dname" | ||
| 287 | :value="item.dcode"> | ||
| 288 | </el-option> | ||
| 289 | </el-select> | ||
| 290 | </div> | ||
| 291 | </el-form-item> | ||
| 292 | </el-col> | ||
| 293 | <el-col :span="8"> | ||
| 294 | <el-form-item label="分摊建筑面积:"> | ||
| 295 | <div class="flex"> | ||
| 296 | <el-input | ||
| 297 | maxlength="12" | ||
| 298 | v-model="ruleForm.fdcq2.ftjzmj" | ||
| 299 | :disabled="!viewEdit" | ||
| 300 | oninput="value = (value.match(/^\d*(\.?\d{0,2})/g)[0]) || null"></el-input> | ||
| 301 | <el-select disabled v-model="mjdw" style="width: 68px"> | ||
| 302 | <el-option | ||
| 303 | v-for="item in dictData['A7']" | ||
| 304 | :key="item.dcode" | ||
| 305 | :label="item.dname" | ||
| 306 | :value="item.dcode"> | ||
| 307 | </el-option> | ||
| 308 | </el-select> | ||
| 309 | </div> | ||
| 310 | </el-form-item> | ||
| 311 | </el-col> | ||
| 312 | </el-row> | ||
| 313 | <el-row :gutter="10"> | ||
| 314 | <el-col :span="24"> | ||
| 315 | <el-form-item label="附记:"> | ||
| 316 | <el-input | ||
| 317 | v-model="ruleForm.fdcq2.fj" | ||
| 318 | type="textarea" | ||
| 319 | maxlength="500" | ||
| 320 | show-word-limit | ||
| 321 | :disabled="!viewEdit"></el-input> | ||
| 322 | </el-form-item> | ||
| 323 | </el-col> | ||
| 324 | </el-row> | ||
| 325 | <div class="slxx_title title-block"> | ||
| 326 | 土地用途 | ||
| 327 | <div class="triangle"></div> | ||
| 328 | </div> | ||
| 329 | <tdytTable | ||
| 330 | :ableOperation="viewEdit" | ||
| 331 | :tableData="ruleForm.tdytqxList" | ||
| 332 | @upDateTdytxxList="upDateTdytxxList" /> | ||
| 333 | <div class="slxx_title title-block"> | ||
| 334 | 权利人信息 | ||
| 335 | <div class="triangle"></div> | ||
| 336 | </div> | ||
| 337 | <el-row :gutter="10"> | ||
| 338 | <el-col :span="12" v-if="ruleForm.qlxx"> | ||
| 339 | <el-form-item label="共有方式:"> | ||
| 340 | <el-radio-group | ||
| 341 | :disabled="!viewEdit" | ||
| 342 | v-model="ruleForm.sldy.gyfs"> | ||
| 343 | <el-radio label="0">单独所有</el-radio> | ||
| 344 | <el-radio label="1">共同共有</el-radio> | ||
| 345 | <el-radio label="2">按份所有</el-radio> | ||
| 346 | <el-radio label="3">其它共有</el-radio> | ||
| 347 | </el-radio-group> | ||
| 348 | </el-form-item> | ||
| 349 | </el-col> | ||
| 350 | <el-col :span="6" v-show="ruleForm.sldy.gyfs != '0'"> | ||
| 351 | <el-form-item label="是否分别持证:"> | ||
| 352 | <el-radio-group | ||
| 353 | v-model="ruleForm.sldy.sqfbcz" | ||
| 354 | :disabled="!viewEdit" | ||
| 355 | @input="updaterow()"> | ||
| 356 | <el-radio :label="1">是</el-radio> | ||
| 357 | <el-radio :label="0">否</el-radio> | ||
| 358 | </el-radio-group> | ||
| 359 | </el-form-item> | ||
| 360 | </el-col> | ||
| 361 | <el-col | ||
| 362 | :span="6" | ||
| 363 | v-show="ruleForm.sldy.sqfbcz == '0' && ruleForm.sldy.gyfs != '0'"> | ||
| 364 | <el-form-item label="持证人:"> | ||
| 365 | <el-select | ||
| 366 | v-model="czr" | ||
| 367 | placeholder="持证人" | ||
| 368 | :disabled="!viewEdit"> | ||
| 369 | <el-option | ||
| 370 | v-for="(item,index) in czrOptions" | ||
| 371 | :key="index" | ||
| 372 | :label="item.sqrmc" | ||
| 373 | :value="item.id"> | ||
| 374 | </el-option> | ||
| 375 | </el-select> | ||
| 376 | </el-form-item> | ||
| 377 | </el-col> | ||
| 378 | </el-row> | ||
| 379 | <qlrCommonTable | ||
| 380 | @upDateQlrxxList="upDateQlrxxList" | ||
| 381 | :tableData="ruleForm.qlrList" | ||
| 382 | :disabled="viewEdit" | ||
| 383 | :gyfs="ruleForm.sldy.gyfs" /> | ||
| 384 | |||
| 385 | <div v-if="ruleForm.qlxx.djlx == '200'"> | ||
| 386 | <div class="slxx_title title-block"> | ||
| 387 | 义务人信息 | ||
| 388 | <div class="triangle"></div> | ||
| 389 | </div> | ||
| 390 | <ywrCommonTable | ||
| 391 | v-if="ruleForm.qlxx" | ||
| 392 | @upDateQlrxxList="upDateYwrxxList" | ||
| 393 | :tableData="ruleForm.ywrList" | ||
| 394 | :disabled="viewEdit" /> | ||
| 395 | </div> | ||
| 396 | <div class="slxx_title title-block"> | ||
| 397 | 登记原因 | ||
| 398 | <div class="triangle"></div> | ||
| 399 | </div> | ||
| 400 | <el-row :gutter="10"> | ||
| 401 | <el-col> | ||
| 402 | <el-form-item v-if="ruleForm.sldy" label="登记原因:" prop="fdcq2.djyy"> | ||
| 403 | <el-input | ||
| 404 | class="textArea" | ||
| 405 | type="textarea" | ||
| 406 | maxlength="500" | ||
| 407 | show-word-limit | ||
| 408 | :disabled="!viewEdit" | ||
| 409 | v-model="ruleForm.fdcq2.djyy"> | ||
| 410 | </el-input> | ||
| 411 | </el-form-item> | ||
| 412 | </el-col> | ||
| 413 | </el-row> | ||
| 414 | </div> | ||
| 415 | <el-row class="btn" v-if="isSave"> | ||
| 416 | <el-form-item> | ||
| 417 | <el-button type="primary" @click="onSubmit">保存</el-button> | ||
| 418 | </el-form-item> | ||
| 419 | </el-row> | ||
| 420 | </el-form> | ||
| 421 | </div> | ||
| 422 | </template> | ||
| 423 | <script> | ||
| 424 | import ywmix from "@/views/ywbl/mixin/index"; | ||
| 425 | import qlrCommonTable from "@/views/workflow/components/qlrCommonTable"; | ||
| 426 | import ywrCommonTable from "@/views/workflow/components/ywrCommonTable"; | ||
| 427 | import tdytTable from "@/views/workflow/components/tdytTable"; | ||
| 428 | import { Init, saveData } from "@/api/workflow/fwsyqFlow.js"; | ||
| 429 | import { mapGetters } from "vuex"; | ||
| 430 | export default { | ||
| 431 | mixins: [ywmix], | ||
| 432 | mounted () { | ||
| 433 | let that = this; | ||
| 434 | this.loading = true | ||
| 435 | this.viewEdit = this.$parent.currentSelectTab.ableOperation; | ||
| 436 | this.propsParam = this.$attrs; | ||
| 437 | var formdata = new FormData(); | ||
| 438 | formdata.append("bsmSldy", this.propsParam.bsmSldy); | ||
| 439 | formdata.append("djlx", this.propsParam.djlx); | ||
| 440 | formdata.append("isEdit", this.viewEdit); | ||
| 441 | Init(formdata).then((res) => { | ||
| 442 | setTimeout(() => { | ||
| 443 | this.loading = false | ||
| 444 | }, 200) | ||
| 445 | if (res.code === 200 && res.result) { | ||
| 446 | that.ruleForm = { | ||
| 447 | ...res.result, | ||
| 448 | ...res.result.qlxxdatas, | ||
| 449 | }; | ||
| 450 | that.ruleForm.qlrList.forEach((item) => { | ||
| 451 | item.id = item.bsmSqr | ||
| 452 | if (item.sfczr == '1') { | ||
| 453 | that.czr = item.bsmSqr | ||
| 454 | } | ||
| 455 | }) | ||
| 456 | that.czrOptions = that.ruleForm.qlrList; | ||
| 457 | that.isSave = that.viewEdit | ||
| 458 | } else { | ||
| 459 | that.isSave = false | ||
| 460 | that.$confirm(res.message, '提示', { | ||
| 461 | cancelButtonText: '取消', | ||
| 462 | showConfirmButton: false, | ||
| 463 | type: 'warning' | ||
| 464 | }) | ||
| 465 | } | ||
| 466 | }).catch(() => { | ||
| 467 | this.loading = false | ||
| 468 | }) | ||
| 469 | }, | ||
| 470 | components: { qlrCommonTable, tdytTable, ywrCommonTable }, | ||
| 471 | computed: { | ||
| 472 | ...mapGetters(["dictData", "flag"]), | ||
| 473 | }, | ||
| 474 | data () { | ||
| 475 | return { | ||
| 476 | isSave: true, | ||
| 477 | loading: false, | ||
| 478 | mjdw: "1", | ||
| 479 | // 键名转换,方法默认是label和children进行树状渲染 | ||
| 480 | normalizer (node) { | ||
| 481 | //方法 | ||
| 482 | if (node.children == null || node.children == "null") { | ||
| 483 | delete node.children; | ||
| 484 | } | ||
| 485 | return { | ||
| 486 | id: node.dcode, | ||
| 487 | label: node.dname, | ||
| 488 | }; | ||
| 489 | }, | ||
| 490 | disabled: true, | ||
| 491 | tdytOption: [], | ||
| 492 | czrOptions: [], | ||
| 493 | czr: "", | ||
| 494 | ruleForm: { | ||
| 495 | flow: { | ||
| 496 | ywh: "", | ||
| 497 | }, | ||
| 498 | qlxx: { | ||
| 499 | mj: "", | ||
| 500 | }, | ||
| 501 | sldy: { | ||
| 502 | gyfs: "", | ||
| 503 | }, | ||
| 504 | slsq: {}, | ||
| 505 | fdcq2: { | ||
| 506 | zyjzmj: "", | ||
| 507 | ftjzmj: "", | ||
| 508 | }, | ||
| 509 | zdjbxx: { | ||
| 510 | ghytmc: "", | ||
| 511 | }, | ||
| 512 | }, | ||
| 513 | //传递参数 | ||
| 514 | propsParam: this.$attrs, | ||
| 515 | //表单是否可操作 | ||
| 516 | viewEdit: true, | ||
| 517 | rules: { | ||
| 518 | 'fdcq2.djyy': [ | ||
| 519 | { required: true, message: '请输入登记原因', trigger: 'blur' } | ||
| 520 | ] | ||
| 521 | } | ||
| 522 | } | ||
| 523 | }, | ||
| 524 | methods: { | ||
| 525 | /** | ||
| 526 | * @description: 更新土地用途信息 | ||
| 527 | * @param {*} val | ||
| 528 | * @author: renchao | ||
| 529 | */ | ||
| 530 | upDateTdytxxList (val) { | ||
| 531 | this.ruleForm.tdytqxList = _.cloneDeep(val); | ||
| 532 | }, | ||
| 533 | /** | ||
| 534 | * @description: 更新权利人信息 | ||
| 535 | * @param {*} val | ||
| 536 | * @author: renchao | ||
| 537 | */ | ||
| 538 | upDateQlrxxList (val) { | ||
| 539 | if (!_.isEqual(val, this.ruleForm.qlrList)) { | ||
| 540 | this.ruleForm.qlrList = _.cloneDeep(val); | ||
| 541 | this.czrOptions = this.ruleForm.qlrList; | ||
| 542 | } | ||
| 543 | this.num = 0 | ||
| 544 | this.ruleForm.qlrList.forEach(item => { | ||
| 545 | if (item.id == this.czr) { | ||
| 546 | this.num++ | ||
| 547 | } | ||
| 548 | }) | ||
| 549 | if (this.num == 0) { | ||
| 550 | this.czr = '' | ||
| 551 | } | ||
| 552 | }, | ||
| 553 | // 是否持证人变化 | ||
| 554 | /** | ||
| 555 | * @description: 是否持证人变化 | ||
| 556 | * @param {*} val | ||
| 557 | * @author: renchao | ||
| 558 | */ | ||
| 559 | updaterow () { | ||
| 560 | this.czr = ""; | ||
| 561 | }, | ||
| 562 | /** | ||
| 563 | * @description: 更新权利人信息 | ||
| 564 | * @param {*} val | ||
| 565 | * @author: renchao | ||
| 566 | */ | ||
| 567 | upDateYwrxxList (val) { | ||
| 568 | this.ruleForm.ywrList = _.cloneDeep(val); | ||
| 569 | }, | ||
| 570 | /** | ||
| 571 | * @description: onSubmit | ||
| 572 | * @author: renchao | ||
| 573 | */ | ||
| 574 | onSubmit () { | ||
| 575 | let that = this; | ||
| 576 | let arr = this.ruleForm.tdytqxList.filter((item) => !item.yt); | ||
| 577 | if (arr.length > 0) { | ||
| 578 | this.$message({ | ||
| 579 | showClose: true, | ||
| 580 | message: "土地用途不能为空", | ||
| 581 | type: "error", | ||
| 582 | }); | ||
| 583 | return false; | ||
| 584 | } | ||
| 585 | if (this.ruleForm.qlrList.length == 0) { | ||
| 586 | this.$message({ | ||
| 587 | showClose: true, | ||
| 588 | message: "请确认权利人信息", | ||
| 589 | type: "error", | ||
| 590 | }); | ||
| 591 | return false; | ||
| 592 | } | ||
| 593 | |||
| 594 | if (this.ruleForm.sldy.gyfs == "0") { | ||
| 595 | if (this.ruleForm.qlrList.length > 1) { | ||
| 596 | this.$message({ | ||
| 597 | showClose: true, | ||
| 598 | message: "共有方式:单独所有,权利人只能是一个人", | ||
| 599 | type: "error", | ||
| 600 | }); | ||
| 601 | return false; | ||
| 602 | } | ||
| 603 | this.ruleForm.qlrList[0].sfczr = "1"; | ||
| 604 | } else { | ||
| 605 | if (this.ruleForm.qlrList.length <= 1) { | ||
| 606 | this.$message({ | ||
| 607 | showClose: true, | ||
| 608 | message: | ||
| 609 | "共有方式:共同所有,按份所有,其他所有,权利人必须是两个以上", | ||
| 610 | type: "error", | ||
| 611 | }); | ||
| 612 | return false; | ||
| 613 | } | ||
| 614 | //是否分别持证 | ||
| 615 | if (this.ruleForm.sldy.sqfbcz == "1") { | ||
| 616 | //是 | ||
| 617 | this.ruleForm.qlrList.forEach((item, index) => { | ||
| 618 | item.sfczr = "1"; | ||
| 619 | }); | ||
| 620 | } else { | ||
| 621 | if (that.czr === '') { | ||
| 622 | that.$message({ | ||
| 623 | showClose: true, | ||
| 624 | message: "请选择持证人", | ||
| 625 | type: "error", | ||
| 626 | }); | ||
| 627 | return false; | ||
| 628 | } | ||
| 629 | this.ruleForm.qlrList.forEach((item, index) => { | ||
| 630 | if (item.id == that.czr) { | ||
| 631 | item.sfczr = "1"; | ||
| 632 | } else { | ||
| 633 | item.sfczr = "0"; | ||
| 634 | } | ||
| 635 | }); | ||
| 636 | } | ||
| 637 | } | ||
| 638 | this.$refs['ruleForm'].validate((valid) => { | ||
| 639 | if (valid) { | ||
| 640 | that.$store.dispatch("user/refreshPage", false); | ||
| 641 | saveData(that.ruleForm).then((res) => { | ||
| 642 | if (res.code === 200) { | ||
| 643 | that.$message({ | ||
| 644 | showClose: true, | ||
| 645 | message: "保存成功!", | ||
| 646 | type: "success", | ||
| 647 | }); | ||
| 648 | that.$store.dispatch("user/refreshPage", true); | ||
| 649 | } else { | ||
| 650 | that.$message({ | ||
| 651 | showClose: true, | ||
| 652 | message: res.message, | ||
| 653 | type: "error" | ||
| 654 | }) | ||
| 655 | } | ||
| 656 | }) | ||
| 657 | } else { | ||
| 658 | that.$message({ | ||
| 659 | showClose: true, | ||
| 660 | message: "请输入登记原因", | ||
| 661 | type: "error" | ||
| 662 | }) | ||
| 663 | return false | ||
| 664 | } | ||
| 665 | }) | ||
| 666 | } | ||
| 667 | } | ||
| 668 | } | ||
| 669 | </script> | ||
| 670 | <style scoped lang="scss"> | ||
| 671 | @import "~@/styles/public.scss"; | ||
| 672 | |||
| 673 | /deep/.el-form { | ||
| 674 | display: flex; | ||
| 675 | flex-direction: column; | ||
| 676 | height: calc(100vh - 130px); | ||
| 677 | } | ||
| 678 | |||
| 679 | /deep/.el-form-item__label { | ||
| 680 | padding: 0; | ||
| 681 | } | ||
| 682 | |||
| 683 | /deep/.el-radio { | ||
| 684 | margin-right: 10px; | ||
| 685 | } | ||
| 686 | |||
| 687 | /deep/.el-select { | ||
| 688 | width: 100%; | ||
| 689 | } | ||
| 690 | |||
| 691 | /deep/.el-form-item { | ||
| 692 | margin-bottom: 3px; | ||
| 693 | } | ||
| 694 | |||
| 695 | .marginBot0 { | ||
| 696 | margin-bottom: 0 !important; | ||
| 697 | } | ||
| 698 | |||
| 699 | .slxx { | ||
| 700 | box-sizing: border-box; | ||
| 701 | } | ||
| 702 | |||
| 703 | .slxx_con { | ||
| 704 | flex: 1; | ||
| 705 | height: 100%; | ||
| 706 | background-color: #ffffff; | ||
| 707 | overflow-y: auto; | ||
| 708 | padding-right: 3px; | ||
| 709 | overflow-x: hidden; | ||
| 710 | } | ||
| 711 | |||
| 712 | .submit_btn { | ||
| 713 | height: 50px; | ||
| 714 | } | ||
| 715 | |||
| 716 | .btn { | ||
| 717 | text-align: center; | ||
| 718 | padding-top: 10px; | ||
| 719 | height: 36px; | ||
| 720 | background-color: #ffffff; | ||
| 721 | padding: 5px 0; | ||
| 722 | } | ||
| 723 | |||
| 724 | .textArea { | ||
| 725 | /deep/.el-textarea__inner { | ||
| 726 | min-height: 90px !important; | ||
| 727 | } | ||
| 728 | } | ||
| 729 | |||
| 730 | /deep/.el-form-item__label { | ||
| 731 | padding-bottom: 0px; | ||
| 732 | } | ||
| 733 | </style> |
| 1 | <!-- | ||
| 2 | * @Description: 受理信息 | ||
| 3 | * @Autor: renchao | ||
| 4 | * @LastEditTime: 2024-01-30 16:07:53 | ||
| 5 | --> | ||
| 6 | <template> | ||
| 7 | <div class="slxx"> | ||
| 8 | <el-form | ||
| 9 | :model="ruleForm" | ||
| 10 | :rules="rules" | ||
| 11 | v-Loading="loading" | ||
| 12 | ref="ruleForm" | ||
| 13 | :label-position="flag ? 'top' : ''" | ||
| 14 | :inline="flag" | ||
| 15 | label-width="120px"> | ||
| 16 | <div class="slxx_con" :class="flag ? 'formMarginBot0' : ''"> | ||
| 17 | <div class="slxx_title title-block"> | ||
| 18 | 申请业务信息 | ||
| 19 | <div class="triangle"></div> | ||
| 20 | </div> | ||
| 21 | <el-row :gutter="10" v-if="ruleForm.slsq"> | ||
| 22 | <el-col :span="8"> | ||
| 23 | <el-form-item label="业务号:"> | ||
| 24 | <el-input disabled v-model="ruleForm.flow.ywh"></el-input> | ||
| 25 | </el-form-item> | ||
| 26 | </el-col> | ||
| 27 | <el-col :span="8"> | ||
| 28 | <el-form-item label="受理人员:"> | ||
| 29 | <el-input disabled v-model="ruleForm.slsq.slry"></el-input> | ||
| 30 | </el-form-item> | ||
| 31 | </el-col> | ||
| 32 | <el-col :span="8"> | ||
| 33 | <el-form-item label="受理时间:"> | ||
| 34 | <el-input disabled v-model="ruleForm.slsq.slsj"></el-input> | ||
| 35 | </el-form-item> | ||
| 36 | </el-col> | ||
| 37 | </el-row> | ||
| 38 | <el-row :gutter="10" v-if="ruleForm.slsq"> | ||
| 39 | <el-col :span="8"> | ||
| 40 | <el-form-item label="权利类型:"> | ||
| 41 | <el-input disabled v-model="ruleForm.sldy.qllxmc"></el-input> | ||
| 42 | </el-form-item> | ||
| 43 | </el-col> | ||
| 44 | <el-col :span="8"> | ||
| 45 | <el-form-item label="登记类型:"> | ||
| 46 | <el-input disabled v-model="ruleForm.sldy.djlxmc"></el-input> | ||
| 47 | </el-form-item> | ||
| 48 | </el-col> | ||
| 49 | <el-col :span="8"> | ||
| 50 | <el-form-item label="登记情形:"> | ||
| 51 | <el-input disabled v-model="ruleForm.slsq.djqxmc"></el-input> | ||
| 52 | </el-form-item> | ||
| 53 | </el-col> | ||
| 54 | </el-row> | ||
| 55 | <div class="slxx_title title-block"> | ||
| 56 | <el-row> | ||
| 57 | <el-col :span="16"> | ||
| 58 | 不动产单元情况 | ||
| 59 | </el-col> | ||
| 60 | <el-col :span="4"> | ||
| 61 | <el-button @click="compare">变化情况对比+</el-button> | ||
| 62 | </el-col> | ||
| 63 | <el-col :span="4" v-if="ruleForm.sldy.djlx=='500'"> | ||
| 64 | <el-form-item label="是否创建证书:" style="height:24px"> | ||
| 65 | <el-radio-group v-model="ruleForm.sldy.sfxysczs"> | ||
| 66 | <el-radio label="1">是</el-radio> | ||
| 67 | <el-radio label="0">否</el-radio> | ||
| 68 | </el-radio-group> | ||
| 69 | </el-form-item> | ||
| 70 | </el-col> | ||
| 71 | </el-row> | ||
| 72 | <div class="triangle"></div> | ||
| 73 | |||
| 74 | </div> | ||
| 75 | <el-row :gutter="10" v-if="ruleForm.qlxx"> | ||
| 76 | <el-col :span="8"> | ||
| 77 | <el-form-item label="不动产单元号:"> | ||
| 78 | <el-input disabled v-model="ruleForm.qlxx.bdcdyh"></el-input> | ||
| 79 | </el-form-item> | ||
| 80 | </el-col> | ||
| 81 | <el-col :span="16"> | ||
| 82 | <el-form-item label="坐落:"> | ||
| 83 | <el-input disabled v-model="ruleForm.sldy.zl"></el-input> | ||
| 84 | </el-form-item> | ||
| 85 | </el-col> | ||
| 86 | </el-row> | ||
| 87 | <el-row :gutter="10" v-if="ruleForm.fdcq2"> | ||
| 88 | <el-col :span="8"> | ||
| 89 | <el-form-item label="土地用途:"> | ||
| 90 | <el-input disabled v-model="ruleForm.fdcq2.yt"></el-input> | ||
| 91 | </el-form-item> | ||
| 92 | </el-col> | ||
| 93 | <el-col :span="8"> | ||
| 94 | <el-form-item label="土地使用起止时间:"> | ||
| 95 | <el-input disabled v-model="ruleForm.fdcq2.tdsyqzsj"></el-input> | ||
| 96 | </el-form-item> | ||
| 97 | </el-col> | ||
| 98 | <el-col :span="8"> | ||
| 99 | <el-form-item label="土地使用期限:"> | ||
| 100 | <el-input disabled v-model="ruleForm.fdcq2.tdsyqx"></el-input> | ||
| 101 | </el-form-item> | ||
| 102 | </el-col> | ||
| 103 | </el-row> | ||
| 104 | <el-row :gutter="10" v-if="ruleForm.qlxx"> | ||
| 105 | <el-col :span="8"> | ||
| 106 | <el-form-item label="规划用途名称:"> | ||
| 107 | <el-input disabled v-model="ruleForm.zdjbxx.ghytmc"></el-input> | ||
| 108 | </el-form-item> | ||
| 109 | </el-col> | ||
| 110 | <el-col :span="8"> | ||
| 111 | <el-form-item label="房屋性质:"> | ||
| 112 | <el-input disabled v-model="ruleForm.fdcq2.fwxzmc"></el-input> | ||
| 113 | </el-form-item> | ||
| 114 | </el-col> | ||
| 115 | <el-col :span="8"> | ||
| 116 | <el-form-item label="房屋结构:"> | ||
| 117 | <el-input disabled v-model="ruleForm.fdcq2.fwjgmc"></el-input> | ||
| 118 | </el-form-item> | ||
| 119 | </el-col> | ||
| 120 | </el-row> | ||
| 121 | <el-row :gutter="10" v-if="ruleForm.fdcq2"> | ||
| 122 | <el-col :span="8"> | ||
| 123 | <el-form-item label="所在层:"> | ||
| 124 | <el-input disabled v-model="ruleForm.fdcq2.szc"></el-input> | ||
| 125 | </el-form-item> | ||
| 126 | </el-col> | ||
| 127 | <el-col :span="8"> | ||
| 128 | <el-form-item label="总层数:"> | ||
| 129 | <el-input | ||
| 130 | disabled | ||
| 131 | v-model.number="ruleForm.fdcq2.zcs" | ||
| 132 | oninput="value=value.replace(/[^0-9]/g,'')"></el-input> | ||
| 133 | </el-form-item> | ||
| 134 | </el-col> | ||
| 135 | <el-col :span="8"> | ||
| 136 | <el-form-item label="竣工时间:"> | ||
| 137 | <el-input disabled v-model="ruleForm.fdcq2.jgsj"></el-input> | ||
| 138 | </el-form-item> | ||
| 139 | </el-col> | ||
| 140 | </el-row> | ||
| 141 | <el-row :gutter="10" v-if="ruleForm.qlxx"> | ||
| 142 | <el-col :span="8"> | ||
| 143 | <el-form-item label="建筑面积:"> | ||
| 144 | <div class="flex"> | ||
| 145 | <el-input | ||
| 146 | disabled | ||
| 147 | v-model="ruleForm.qlxx.mj" | ||
| 148 | oninput="value = (value.match(/^\d*(\.?\d{0,2})/g)[0]) || null"></el-input> | ||
| 149 | <el-select disabled v-model="mjdw" style="width: 68px"> | ||
| 150 | <el-option | ||
| 151 | v-for="item in dictData['A7']" | ||
| 152 | :key="item.dcode" | ||
| 153 | :label="item.dname" | ||
| 154 | :value="item.dcode"> | ||
| 155 | </el-option> | ||
| 156 | </el-select> | ||
| 157 | </div> | ||
| 158 | </el-form-item> | ||
| 159 | </el-col> | ||
| 160 | <el-col :span="8"> | ||
| 161 | <el-form-item label="专有建筑面积:"> | ||
| 162 | <div class="flex"> | ||
| 163 | <el-input | ||
| 164 | disabled | ||
| 165 | v-model="ruleForm.fdcq2.zyjzmj" | ||
| 166 | oninput="value = (value.match(/^\d*(\.?\d{0,2})/g)[0]) || null"></el-input> | ||
| 167 | <el-select disabled v-model="mjdw" style="width: 68px"> | ||
| 168 | <el-option | ||
| 169 | v-for="item in dictData['A7']" | ||
| 170 | :key="item.dcode" | ||
| 171 | :label="item.dname" | ||
| 172 | :value="item.dcode"> | ||
| 173 | </el-option> | ||
| 174 | </el-select> | ||
| 175 | </div> | ||
| 176 | </el-form-item> | ||
| 177 | </el-col> | ||
| 178 | <el-col :span="8"> | ||
| 179 | <el-form-item label="分摊建筑面积:"> | ||
| 180 | <div class="flex"> | ||
| 181 | <el-input | ||
| 182 | disabled | ||
| 183 | v-model="ruleForm.fdcq2.ftjzmj" | ||
| 184 | oninput="value = (value.match(/^\d*(\.?\d{0,2})/g)[0]) || null"></el-input> | ||
| 185 | <el-select disabled v-model="mjdw" style="width: 68px"> | ||
| 186 | <el-option | ||
| 187 | v-for="item in dictData['A7']" | ||
| 188 | :key="item.dcode" | ||
| 189 | :label="item.dname" | ||
| 190 | :value="item.dcode"> | ||
| 191 | </el-option> | ||
| 192 | </el-select> | ||
| 193 | </div> | ||
| 194 | </el-form-item> | ||
| 195 | </el-col> | ||
| 196 | </el-row> | ||
| 197 | <div class="slxx_title title-block"> | ||
| 198 | 土地用途 | ||
| 199 | <div class="triangle"></div> | ||
| 200 | </div> | ||
| 201 | <tdytTable | ||
| 202 | :ableOperation="viewEdit" | ||
| 203 | :tableData="ruleForm.tdytqxList" | ||
| 204 | @upDateTdytxxList="upDateTdytxxList" /> | ||
| 205 | <div class="slxx_title title-block"> | ||
| 206 | 权利人信息 | ||
| 207 | <div class="triangle"></div> | ||
| 208 | </div> | ||
| 209 | <el-row :gutter="10"> | ||
| 210 | <el-col :span="12"> | ||
| 211 | <el-form-item label="共有方式:"> | ||
| 212 | <el-radio-group | ||
| 213 | :disabled="!viewEdit" | ||
| 214 | v-model="ruleForm.sldy.gyfs"> | ||
| 215 | <el-radio label="0">单独所有</el-radio> | ||
| 216 | <el-radio label="1">共同共有</el-radio> | ||
| 217 | <el-radio label="2">按份所有</el-radio> | ||
| 218 | <el-radio label="3">其它共有</el-radio> | ||
| 219 | </el-radio-group> | ||
| 220 | </el-form-item> | ||
| 221 | </el-col> | ||
| 222 | <el-col :span="6" v-show="ruleForm.sldy.gyfs != '0'"> | ||
| 223 | <el-form-item label="是否分别持证:"> | ||
| 224 | <el-radio-group | ||
| 225 | v-model="ruleForm.sldy.sqfbcz" | ||
| 226 | :disabled="!viewEdit" | ||
| 227 | @input="updaterow()"> | ||
| 228 | <el-radio :label="1">是</el-radio> | ||
| 229 | <el-radio :label="0">否</el-radio> | ||
| 230 | </el-radio-group> | ||
| 231 | </el-form-item> | ||
| 232 | </el-col> | ||
| 233 | <el-col | ||
| 234 | :span="6" | ||
| 235 | v-show="ruleForm.sldy.sqfbcz == '0' && ruleForm.sldy.gyfs != '0'"> | ||
| 236 | <el-form-item label="持证人:"> | ||
| 237 | <el-select | ||
| 238 | v-model="czr" | ||
| 239 | placeholder="持证人" | ||
| 240 | :disabled="!viewEdit"> | ||
| 241 | <el-option | ||
| 242 | v-for="(item,index) in czrOptions" | ||
| 243 | :key="index" | ||
| 244 | :label="item.sqrmc" | ||
| 245 | :value="item.id"> | ||
| 246 | </el-option> | ||
| 247 | </el-select> | ||
| 248 | </el-form-item> | ||
| 249 | </el-col> | ||
| 250 | </el-row> | ||
| 251 | <qlrCommonTable | ||
| 252 | @upDateQlrxxList="upDateQlrxxList" | ||
| 253 | :disabled="!viewEdit" | ||
| 254 | :tableData="ruleForm.qlrList" | ||
| 255 | :gyfs="ruleForm.sldy.gyfs" /> | ||
| 256 | <div class="slxx_title title-block"> | ||
| 257 | 登记原因 | ||
| 258 | <div class="triangle"></div> | ||
| 259 | </div> | ||
| 260 | <el-row :gutter="10"> | ||
| 261 | <el-col> | ||
| 262 | <el-form-item v-if="ruleForm.fdcq2" label="登记原因:" prop="fdcq2.djyy"> | ||
| 263 | <el-input | ||
| 264 | class="textArea" | ||
| 265 | type="textarea" | ||
| 266 | maxlength="500" | ||
| 267 | show-word-limit | ||
| 268 | :disabled="!viewEdit" | ||
| 269 | v-model="ruleForm.fdcq2.djyy"> | ||
| 270 | </el-input> | ||
| 271 | </el-form-item> | ||
| 272 | </el-col> | ||
| 273 | </el-row> | ||
| 274 | </div> | ||
| 275 | <el-row class="btn" v-if="isSave"> | ||
| 276 | <el-form-item> | ||
| 277 | <el-button type="primary" @click="onSubmit">保存</el-button> | ||
| 278 | </el-form-item> | ||
| 279 | </el-row> | ||
| 280 | </el-form> | ||
| 281 | </div> | ||
| 282 | </template> | ||
| 283 | <script> | ||
| 284 | import ywmix from "@/views/ywbl/mixin/index"; | ||
| 285 | import qlrCommonTable from "@/views/workflow/components/qlrCommonTable"; | ||
| 286 | import tdytTable from "@/views/workflow/components/tdytTable"; | ||
| 287 | import { Init, saveData } from "@/api/workflow/fwsyqFlow.js"; | ||
| 288 | import { mapGetters } from "vuex"; | ||
| 289 | export default { | ||
| 290 | mixins: [ywmix], | ||
| 291 | mounted () { | ||
| 292 | let that = this | ||
| 293 | this.loading = true | ||
| 294 | this.viewEdit = this.$parent.currentSelectTab.ableOperation; | ||
| 295 | this.propsParam = this.$attrs; | ||
| 296 | var formdata = new FormData(); | ||
| 297 | formdata.append("bsmSldy", this.propsParam.bsmSldy); | ||
| 298 | formdata.append("djlx", this.propsParam.djlx); | ||
| 299 | formdata.append("isEdit", this.viewEdit); | ||
| 300 | Init(formdata).then((res) => { | ||
| 301 | setTimeout(() => { | ||
| 302 | this.loading = false | ||
| 303 | }, 200) | ||
| 304 | if (res.code === 200 && res.result) { | ||
| 305 | that.ruleForm = { | ||
| 306 | ...res.result, | ||
| 307 | ...res.result.zdjbxxdatas, | ||
| 308 | ...res.result.qlxxdatas, | ||
| 309 | ...res.result.jsydsyqdatas, | ||
| 310 | }; | ||
| 311 | that.ruleForm.qlrList.forEach((item) => { | ||
| 312 | item.id = item.bsmSqr | ||
| 313 | if (item.sfczr == '1') { | ||
| 314 | that.czr = item.bsmSqr | ||
| 315 | } | ||
| 316 | }) | ||
| 317 | that.czrOptions = that.ruleForm.qlrList; | ||
| 318 | that.isSave = that.viewEdit | ||
| 319 | } else { | ||
| 320 | that.isSave = false | ||
| 321 | that.$confirm(res.message, '提示', { | ||
| 322 | cancelButtonText: '取消', | ||
| 323 | showConfirmButton: false, | ||
| 324 | type: 'warning' | ||
| 325 | }) | ||
| 326 | } | ||
| 327 | }).catch(() => { | ||
| 328 | this.loading = false | ||
| 329 | this.isSave = false | ||
| 330 | }) | ||
| 331 | }, | ||
| 332 | components: { qlrCommonTable, tdytTable }, | ||
| 333 | computed: { | ||
| 334 | ...mapGetters(["dictData", "flag"]), | ||
| 335 | }, | ||
| 336 | data () { | ||
| 337 | return { | ||
| 338 | isSave: true, | ||
| 339 | loading: false, | ||
| 340 | mjdw: "1", | ||
| 341 | //表单是否可操作 | ||
| 342 | viewEdit: false, | ||
| 343 | disabled: true, | ||
| 344 | tdytOption: [], | ||
| 345 | czrOptions: [], | ||
| 346 | czr: "", | ||
| 347 | ruleForm: { | ||
| 348 | flow: { | ||
| 349 | ywh: "", | ||
| 350 | }, | ||
| 351 | slry: "", | ||
| 352 | slsj: "", | ||
| 353 | qllx: "", | ||
| 354 | djlx: "", | ||
| 355 | djqx: "", | ||
| 356 | sldy: { | ||
| 357 | gyfs: "", | ||
| 358 | }, | ||
| 359 | // 宗地代码 | ||
| 360 | zddm: "", | ||
| 361 | bdcdyh: "", | ||
| 362 | qlxzmc: "", | ||
| 363 | qlrxx: [], | ||
| 364 | // 自然幢号 | ||
| 365 | zrzh: "", | ||
| 366 | // 户不动产单元号 | ||
| 367 | hbdcdyh: "", | ||
| 368 | djzt: "", | ||
| 369 | // 图幅丘幢号 | ||
| 370 | tfqzh: "", | ||
| 371 | zl: "", | ||
| 372 | // 房屋用途 | ||
| 373 | fwyt: "", | ||
| 374 | fwxz: "", | ||
| 375 | fwjg: "", | ||
| 376 | // 权利人信息 | ||
| 377 | // 是否分别持证 | ||
| 378 | sffbcz: "", | ||
| 379 | // 持证人 | ||
| 380 | czr: "", | ||
| 381 | djyy: "", | ||
| 382 | // 规划用途名称 | ||
| 383 | zdjbxx: { | ||
| 384 | ghytmc: "", | ||
| 385 | }, | ||
| 386 | fdcq2: { | ||
| 387 | fwxzmc: "", | ||
| 388 | }, | ||
| 389 | slsq: { | ||
| 390 | gyfs: "", | ||
| 391 | }, | ||
| 392 | }, | ||
| 393 | //传递参数 | ||
| 394 | propsParam: {}, | ||
| 395 | rules: { | ||
| 396 | 'fdcq2.djyy': [ | ||
| 397 | { required: true, message: '请输入登记原因', trigger: 'blur' } | ||
| 398 | ] | ||
| 399 | } | ||
| 400 | } | ||
| 401 | }, | ||
| 402 | methods: { | ||
| 403 | /** | ||
| 404 | * @description: dataSelectClick | ||
| 405 | * @author: renchao | ||
| 406 | */ | ||
| 407 | dataSelectClick () { | ||
| 408 | this.$popup( | ||
| 409 | "房屋所有权", | ||
| 410 | this.BASE_API.SERVERAPI + "/rest/ywbl/fdcq2/slxxCompareDetai", | ||
| 411 | { | ||
| 412 | formData: { | ||
| 413 | bsmSldy: this.propsParam.bsmSldy, | ||
| 414 | qllx: this.propsParam.qllx, | ||
| 415 | }, | ||
| 416 | } | ||
| 417 | ); | ||
| 418 | }, | ||
| 419 | /** | ||
| 420 | * @description: 更新土地用途信息 | ||
| 421 | * @param {*} val | ||
| 422 | * @author: renchao | ||
| 423 | */ | ||
| 424 | upDateTdytxxList (val) { | ||
| 425 | this.ruleForm.tdytqxList && (this.ruleForm.tdytqxList = _.cloneDeep(val)); | ||
| 426 | this.key++; | ||
| 427 | }, | ||
| 428 | /** | ||
| 429 | * @description: 是否持证人变化 | ||
| 430 | * @param {*} val | ||
| 431 | * @author: renchao | ||
| 432 | */ | ||
| 433 | updaterow () { | ||
| 434 | this.czr = ""; | ||
| 435 | }, | ||
| 436 | /** | ||
| 437 | * @description: 更新权利人信息 | ||
| 438 | * @param {*} val | ||
| 439 | * @author: renchao | ||
| 440 | */ | ||
| 441 | upDateQlrxxList (val) { | ||
| 442 | if (!_.isEqual(val, this.ruleForm.qlrList)) { | ||
| 443 | this.ruleForm.qlrList = _.cloneDeep(val); | ||
| 444 | this.czrOptions = this.ruleForm.qlrList; | ||
| 445 | } | ||
| 446 | this.num = 0 | ||
| 447 | this.ruleForm.qlrList.forEach(item => { | ||
| 448 | if (item.id == this.czr) { | ||
| 449 | this.num++ | ||
| 450 | } | ||
| 451 | }) | ||
| 452 | if (this.num == 0) { | ||
| 453 | this.czr = '' | ||
| 454 | } | ||
| 455 | }, | ||
| 456 | /** | ||
| 457 | * @description: 更新权利人信息 | ||
| 458 | * @param {*} val | ||
| 459 | * @author: renchao | ||
| 460 | */ | ||
| 461 | upDateYwrxxList (val) { | ||
| 462 | this.ruleForm.ywrList = _.cloneDeep(val); | ||
| 463 | }, | ||
| 464 | /** | ||
| 465 | * @description: onSubmit | ||
| 466 | * @author: renchao | ||
| 467 | */ | ||
| 468 | onSubmit () { | ||
| 469 | let that = this; | ||
| 470 | let arr = this.ruleForm.tdytqxList.filter((item) => !item.yt); | ||
| 471 | if (arr.length > 0) { | ||
| 472 | this.$message({ | ||
| 473 | showClose: true, | ||
| 474 | message: "土地用途不能为空", | ||
| 475 | type: "error", | ||
| 476 | }); | ||
| 477 | return false; | ||
| 478 | } | ||
| 479 | if (this.ruleForm.qlrList.length == 0) { | ||
| 480 | this.$message({ | ||
| 481 | showClose: true, | ||
| 482 | message: "请确认权利人信息", | ||
| 483 | type: "error", | ||
| 484 | }); | ||
| 485 | return false; | ||
| 486 | } | ||
| 487 | |||
| 488 | if (this.ruleForm.sldy.gyfs == "0") { | ||
| 489 | if (this.ruleForm.qlrList.length > 1) { | ||
| 490 | this.$message({ | ||
| 491 | showClose: true, | ||
| 492 | message: "共有方式:单独所有,权利人只能是一个人", | ||
| 493 | type: "error", | ||
| 494 | }); | ||
| 495 | return false; | ||
| 496 | } | ||
| 497 | this.ruleForm.qlrList[0].sfczr = "1"; | ||
| 498 | } else { | ||
| 499 | if (this.ruleForm.qlrList.length <= 1) { | ||
| 500 | this.$message({ | ||
| 501 | showClose: true, | ||
| 502 | message: | ||
| 503 | "共有方式:共同所有,按份所有,其他所有,权利人必须是两个以上", | ||
| 504 | type: "error", | ||
| 505 | }); | ||
| 506 | return false; | ||
| 507 | } | ||
| 508 | //是否分别持证 | ||
| 509 | if (this.ruleForm.sldy.sqfbcz == "1") { | ||
| 510 | //是 | ||
| 511 | this.ruleForm.qlrList.forEach((item, index) => { | ||
| 512 | item.sfczr = "1"; | ||
| 513 | }); | ||
| 514 | } else { | ||
| 515 | if (that.czr === '') { | ||
| 516 | that.$message({ | ||
| 517 | showClose: true, | ||
| 518 | message: "请选择持证人", | ||
| 519 | type: "error" | ||
| 520 | }); | ||
| 521 | return false; | ||
| 522 | } | ||
| 523 | this.ruleForm.qlrList.forEach(item => { | ||
| 524 | if (item.id == that.czr) { | ||
| 525 | item.sfczr = "1" | ||
| 526 | } else { | ||
| 527 | item.sfczr = "0" | ||
| 528 | } | ||
| 529 | }) | ||
| 530 | } | ||
| 531 | } | ||
| 532 | this.$refs['ruleForm'].validate((valid) => { | ||
| 533 | if (valid) { | ||
| 534 | that.$store.dispatch("user/refreshPage", false); | ||
| 535 | saveData(that.ruleForm).then((res) => { | ||
| 536 | if (res.code === 200) { | ||
| 537 | that.$message({ | ||
| 538 | showClose: true, | ||
| 539 | message: "保存成功!", | ||
| 540 | type: "success", | ||
| 541 | }); | ||
| 542 | that.$store.dispatch("user/refreshPage", true); | ||
| 543 | } else { | ||
| 544 | that.$message({ | ||
| 545 | showClose: true, | ||
| 546 | message: res.message, | ||
| 547 | type: "error", | ||
| 548 | }); | ||
| 549 | } | ||
| 550 | }) | ||
| 551 | |||
| 552 | } else { | ||
| 553 | that.$message({ | ||
| 554 | showClose: true, | ||
| 555 | message: "请输入登记原因", | ||
| 556 | type: "error" | ||
| 557 | }) | ||
| 558 | return false | ||
| 559 | } | ||
| 560 | }) | ||
| 561 | }, | ||
| 562 | /** | ||
| 563 | * @description: compare | ||
| 564 | * @author: renchao | ||
| 565 | */ | ||
| 566 | compare () { | ||
| 567 | this.$popupDialog( | ||
| 568 | this.ruleForm.qlxx.qllxmc, | ||
| 569 | "registerBook/comparison", | ||
| 570 | { | ||
| 571 | bsmQlxx: this.ruleForm.qlxx.bsmQlxx, | ||
| 572 | dqqllx: "FDCQ2", | ||
| 573 | }, | ||
| 574 | "80%", | ||
| 575 | true | ||
| 576 | ); | ||
| 577 | }, | ||
| 578 | }, | ||
| 579 | }; | ||
| 580 | </script> | ||
| 581 | <style scoped lang="scss"> | ||
| 582 | @import "~@/styles/public.scss"; | ||
| 583 | @import "~@/styles/slxx/slxx.scss"; | ||
| 584 | /deep/.el-form { | ||
| 585 | display: flex; | ||
| 586 | flex-direction: column; | ||
| 587 | height: calc(100vh - 130px); | ||
| 588 | } | ||
| 589 | |||
| 590 | /deep/.el-form-item__label { | ||
| 591 | padding: 0; | ||
| 592 | } | ||
| 593 | |||
| 594 | /deep/.el-radio { | ||
| 595 | margin-right: 10px; | ||
| 596 | } | ||
| 597 | |||
| 598 | /deep/.el-select { | ||
| 599 | width: 100%; | ||
| 600 | } | ||
| 601 | |||
| 602 | /deep/.el-form-item { | ||
| 603 | margin-bottom: 3px; | ||
| 604 | } | ||
| 605 | |||
| 606 | .marginBot0 { | ||
| 607 | margin-bottom: 0 !important; | ||
| 608 | } | ||
| 609 | |||
| 610 | .slxx { | ||
| 611 | box-sizing: border-box; | ||
| 612 | } | ||
| 613 | |||
| 614 | .slxx_con { | ||
| 615 | flex: 1; | ||
| 616 | height: 100%; | ||
| 617 | background-color: #ffffff; | ||
| 618 | overflow-y: auto; | ||
| 619 | padding-right: 3px; | ||
| 620 | overflow-x: hidden; | ||
| 621 | } | ||
| 622 | |||
| 623 | .submit_btn { | ||
| 624 | height: 50px; | ||
| 625 | } | ||
| 626 | |||
| 627 | .btn { | ||
| 628 | text-align: center; | ||
| 629 | padding-top: 10px; | ||
| 630 | height: 36px; | ||
| 631 | background-color: #ffffff; | ||
| 632 | padding: 5px 0; | ||
| 633 | } | ||
| 634 | |||
| 635 | .textArea { | ||
| 636 | /deep/.el-textarea__inner { | ||
| 637 | min-height: 90px !important; | ||
| 638 | } | ||
| 639 | } | ||
| 640 | |||
| 641 | /deep/.el-form-item__label { | ||
| 642 | padding-bottom: 0px; | ||
| 643 | } | ||
| 644 | </style> |
| 1 | <!-- | ||
| 2 | * @Description: | ||
| 3 | * @Autor: renchao | ||
| 4 | * @LastEditTime: 2023-08-24 16:15:50 | ||
| 5 | --> | ||
| 6 | <template> | ||
| 7 | <div class="djxxTable" :style="{'max-height': this.timeLineHeight + 'px' }" | ||
| 8 | style="overflow-y:scroll;"> | ||
| 9 | <div class="tableBox"> | ||
| 10 | <div class="title"> | ||
| 11 | <span>{{ title }}</span> | ||
| 12 | </div> | ||
| 13 | <div class="xxTableBox"> | ||
| 14 | <table class="xxTable"> | ||
| 15 | <tr> | ||
| 16 | <td></td> | ||
| 17 | <td>变更前</td> | ||
| 18 | <td>变更后</td> | ||
| 19 | </tr> | ||
| 20 | <tr v-for="(item, colindex) in columns" :key="colindex"> | ||
| 21 | <td> | ||
| 22 | {{ item.label }} | ||
| 23 | </td> | ||
| 24 | <td | ||
| 25 | v-for="(row, index) in tableData" | ||
| 26 | :key="index" | ||
| 27 | :class="[ | ||
| 28 | row.qszt == '2' ? 'lishi' : '', | ||
| 29 | row.qszt == '0' ? 'linshi' : '', | ||
| 30 | row.qlzt == '4' ? 'linshi' : '', | ||
| 31 | |||
| 32 | item.prop == 'qszt' && row.qlzt == '3' ? 'linshiIcon' : '', | ||
| 33 | item.prop == 'qszt' && row.qlzt == '2' ? 'linshiIcon' : '', | ||
| 34 | item.prop == 'qszt' && row.qlzt == '1' ? 'xianshiIcon' : '', | ||
| 35 | item.prop == 'qszt' && row.qlzt == '4' ? 'zhuxiaoIcon' : '' | ||
| 36 | ]"> | ||
| 37 | <div class="icon" v-if="item.prop == 'qszt' &&row.qlzt == '1'"> | ||
| 38 | 有效 | ||
| 39 | </div> | ||
| 40 | <div class="icon" v-if="item.prop == 'qszt' && row.qlzt == '2'"> | ||
| 41 | 正在补录 | ||
| 42 | </div> | ||
| 43 | <div class="icon" v-if="item.prop == 'qszt' && row.qlzt == '3'"> | ||
| 44 | 正在申请 | ||
| 45 | </div> | ||
| 46 | <div class="icon" v-if="item.prop == 'qszt' && row.qlzt == '4'"> | ||
| 47 | 正在注销 | ||
| 48 | </div> | ||
| 49 | |||
| 50 | <p v-if="!['djyy','fj'].includes(item.prop)"> | ||
| 51 | <span v-if="item.prop == 'qszt'"> | ||
| 52 | {{ getQsztName(row[item.prop]) }} | ||
| 53 | </span> | ||
| 54 | <span v-else>{{ row[item.prop] }}</span> | ||
| 55 | </p> | ||
| 56 | |||
| 57 | <el-tooltip v-else effect="dark" :content="row[item.prop]" placement="top" popper-class="tooltip-width"> | ||
| 58 | <span class="ellipsis-line"> | ||
| 59 | {{ row[item.prop] }} | ||
| 60 | </span> | ||
| 61 | </el-tooltip> | ||
| 62 | </td> | ||
| 63 | </tr> | ||
| 64 | </table> | ||
| 65 | </div> | ||
| 66 | </div> | ||
| 67 | </div> | ||
| 68 | </template> | ||
| 69 | |||
| 70 | <script> | ||
| 71 | import { getFdcqLSInfo } from "@/api/djbDetail.js"; | ||
| 72 | import { datas } from "@/views/registerBook/qlxxFormData.js"; | ||
| 73 | |||
| 74 | export default { | ||
| 75 | data () { | ||
| 76 | return { | ||
| 77 | title: "房地产权登记信息(独幢、层、套、间房屋)", | ||
| 78 | qsztList: datas.columns().qsztList, | ||
| 79 | checkList: datas.columns().checkList, | ||
| 80 | //传递参数 | ||
| 81 | propsParam: this.$attrs, | ||
| 82 | //列表数据 | ||
| 83 | tableData: [], | ||
| 84 | //空列值个数 | ||
| 85 | emptycolNum: 1, | ||
| 86 | //列名称对象 | ||
| 87 | columns: datas.columns().FDCQ2, | ||
| 88 | tdColumns: datas.columns().JSYDSYQ | ||
| 89 | |||
| 90 | }; | ||
| 91 | }, | ||
| 92 | created () { | ||
| 93 | this.loadData(); | ||
| 94 | }, | ||
| 95 | mounted () { | ||
| 96 | this.timeLineHeight = document.documentElement.clientHeight - 210; | ||
| 97 | window.onresize = () => { | ||
| 98 | this.timeLineHeight = document.documentElement.clientHeight - 210; | ||
| 99 | }; | ||
| 100 | }, | ||
| 101 | methods: { | ||
| 102 | /** | ||
| 103 | * @description: loadData | ||
| 104 | * @author: renchao | ||
| 105 | */ | ||
| 106 | loadData () { | ||
| 107 | var formdata = new FormData(); | ||
| 108 | formdata.append("bsmSldy", this.propsParam.formData.bsmSldy); | ||
| 109 | formdata.append("qllx", this.propsParam.formData.qllx); | ||
| 110 | formdata.append("isEdit", this.ableOperation); | ||
| 111 | getFdcqLSInfo(formdata).then((res) => { | ||
| 112 | if (res.code === 200) { | ||
| 113 | this.tableData = res.result; | ||
| 114 | if (this.tableData.length < datas.columns().emptycolNum) { | ||
| 115 | this.emptycolNum = | ||
| 116 | datas.columns().emptycolNum - this.tableData.length; | ||
| 117 | } else { | ||
| 118 | this.emptycolNum = 0; | ||
| 119 | } | ||
| 120 | } | ||
| 121 | }); | ||
| 122 | }, | ||
| 123 | /** | ||
| 124 | * @description: checkChange | ||
| 125 | * @author: renchao | ||
| 126 | */ | ||
| 127 | checkChange () { | ||
| 128 | if (this.checkList.length === 0) { | ||
| 129 | this.tableData = []; | ||
| 130 | this.emptycolNum = datas.columns().emptycolNum; | ||
| 131 | } else { | ||
| 132 | this.loadData(); | ||
| 133 | } | ||
| 134 | }, | ||
| 135 | /** | ||
| 136 | * @description: getQsztName | ||
| 137 | * @param {*} code | ||
| 138 | * @author: renchao | ||
| 139 | */ | ||
| 140 | getQsztName (code) { | ||
| 141 | let name = ""; | ||
| 142 | for (let item of this.qsztList) { | ||
| 143 | if (item.value == code) { | ||
| 144 | name = item.label; | ||
| 145 | break; | ||
| 146 | } | ||
| 147 | } | ||
| 148 | return name; | ||
| 149 | }, | ||
| 150 | }, | ||
| 151 | }; | ||
| 152 | </script> | ||
| 153 | |||
| 154 | <style lang="scss" scoped> | ||
| 155 | @import "~@/views/registerBook/qlxxCommon.scss"; | ||
| 156 | </style> |
| 1 | <!-- | ||
| 2 | * @Description: 受理信息 | ||
| 3 | * @Autor: renchao | ||
| 4 | * @LastEditTime: 2024-01-24 09:30:19 | ||
| 5 | --> | ||
| 6 | <template> | ||
| 7 | <div class="slxx"> | ||
| 8 | <el-form | ||
| 9 | :model="ruleForm" | ||
| 10 | :rules="rules" | ||
| 11 | ref="ruleForm" | ||
| 12 | v-Loading="loading" | ||
| 13 | :label-position="flag ? 'top' : ''" | ||
| 14 | :inline="flag" | ||
| 15 | label-width="130px"> | ||
| 16 | <div class="slxx_con" :class="flag ? 'formMarginBot0' : ''"> | ||
| 17 | <div class="slxx_title title-block"> | ||
| 18 | 申请业务信息 | ||
| 19 | <div class="triangle"></div> | ||
| 20 | </div> | ||
| 21 | <el-row :gutter="10" v-if="ruleForm.slsq"> | ||
| 22 | <el-col :span="8"> | ||
| 23 | <el-form-item label="业务号:"> | ||
| 24 | <el-input disabled v-model="ruleForm.flow.ywh"></el-input> | ||
| 25 | </el-form-item> | ||
| 26 | </el-col> | ||
| 27 | <el-col :span="8"> | ||
| 28 | <el-form-item label="受理人员:"> | ||
| 29 | <el-input disabled v-model="ruleForm.slsq.slry"></el-input> | ||
| 30 | </el-form-item> | ||
| 31 | </el-col> | ||
| 32 | <el-col :span="8"> | ||
| 33 | <el-form-item label="受理时间:"> | ||
| 34 | <el-input disabled v-model="ruleForm.slsq.slsj"></el-input> | ||
| 35 | </el-form-item> | ||
| 36 | </el-col> | ||
| 37 | </el-row> | ||
| 38 | <el-row :gutter="10" v-if="ruleForm.slsq"> | ||
| 39 | <el-col :span="8" v-if="ruleForm.sldyList.length > 0"> | ||
| 40 | <el-form-item label="权利类型:"> | ||
| 41 | <el-input | ||
| 42 | disabled | ||
| 43 | v-model="ruleForm.sldyList[0].qllxmc"></el-input> | ||
| 44 | </el-form-item> | ||
| 45 | </el-col> | ||
| 46 | <el-col :span="8" v-if="ruleForm.sldyList.length > 0"> | ||
| 47 | <el-form-item label="登记类型:"> | ||
| 48 | <el-input | ||
| 49 | disabled | ||
| 50 | v-model="ruleForm.sldyList[0].djlxmc"></el-input> | ||
| 51 | </el-form-item> | ||
| 52 | </el-col> | ||
| 53 | <el-col :span="8"> | ||
| 54 | <el-form-item label="登记情形:"> | ||
| 55 | <el-input disabled v-model="ruleForm.slsq.djqxmc"></el-input> | ||
| 56 | </el-form-item> | ||
| 57 | </el-col> | ||
| 58 | </el-row> | ||
| 59 | <div class="slxx_title title-block" v-if="ruleForm.slsq.djywbm.includes('100')"> | ||
| 60 | <el-row> | ||
| 61 | <el-col :span="19"> | ||
| 62 | <p>房屋信息列表({{ ruleForm.hlist.length }} 户)</p> | ||
| 63 | </el-col> | ||
| 64 | <el-col :span="5"> | ||
| 65 | <el-form-item label="发证方式:" :disabled="!viewEdit"> | ||
| 66 | <el-radio-group v-model="ruleForm.slsq.fzfs"> | ||
| 67 | <el-radio label="2">大证</el-radio> | ||
| 68 | <el-radio label="1">小证</el-radio> | ||
| 69 | </el-radio-group> | ||
| 70 | </el-form-item> | ||
| 71 | </el-col> | ||
| 72 | <!-- <div class="triangle"></div> --> | ||
| 73 | </el-row> | ||
| 74 | </div> | ||
| 75 | <qjhTable :tableData="ruleForm.hlist" v-if="ruleForm.slsq.djywbm.includes('100')"/> | ||
| 76 | <cfBdcdyTable :tableData="ruleForm.qlxxList" v-if="ruleForm.slsq.djywbm.includes('400')"/> | ||
| 77 | <div class="slxx_title title-block" v-if="ruleForm.slsq.djywbm.includes('100')"> | ||
| 78 | 权利人信息 | ||
| 79 | <div class="triangle"></div> | ||
| 80 | </div> | ||
| 81 | <el-row :gutter="10" v-if="ruleForm.slsq.djywbm.includes('100')"> | ||
| 82 | <el-col :span="12" v-if="ruleForm.sldyList.length > 0"> | ||
| 83 | <el-form-item label="共有方式:"> | ||
| 84 | <el-radio-group | ||
| 85 | :disabled="!viewEdit" | ||
| 86 | v-model="ruleForm.sldyList[0].gyfs"> | ||
| 87 | <el-radio label="0">单独所有</el-radio> | ||
| 88 | <el-radio label="1">共同共有</el-radio> | ||
| 89 | <el-radio label="2">按份所有</el-radio> | ||
| 90 | <el-radio label="3">其它共有</el-radio> | ||
| 91 | </el-radio-group> | ||
| 92 | </el-form-item> | ||
| 93 | </el-col> | ||
| 94 | |||
| 95 | <el-col :span="6" v-if="ruleForm.sldyList[0].gyfs != 0"> | ||
| 96 | <el-form-item label="是否分别持证:"> | ||
| 97 | <el-radio-group | ||
| 98 | v-model="ruleForm.sldyList[0].sqfbcz" | ||
| 99 | :disabled="!viewEdit" | ||
| 100 | @input="updaterow()"> | ||
| 101 | <el-radio :label="1">是</el-radio> | ||
| 102 | <el-radio :label="0">否</el-radio> | ||
| 103 | </el-radio-group> | ||
| 104 | </el-form-item> | ||
| 105 | </el-col> | ||
| 106 | <el-col | ||
| 107 | :span="6" | ||
| 108 | v-if=" | ||
| 109 | ruleForm.sldyList[0].gyfs != 0 && | ||
| 110 | ruleForm.sldyList[0].sqfbcz == '0' | ||
| 111 | "> | ||
| 112 | <el-form-item label="持证人:"> | ||
| 113 | <el-select | ||
| 114 | v-model="czr" | ||
| 115 | placeholder="持证人" | ||
| 116 | :disabled="!viewEdit"> | ||
| 117 | <el-option | ||
| 118 | v-for="(item,index) in czrOptions" | ||
| 119 | :key="index" | ||
| 120 | :label="item.sqrmc" | ||
| 121 | :value="item.id"></el-option> | ||
| 122 | </el-select> | ||
| 123 | </el-form-item> | ||
| 124 | </el-col> | ||
| 125 | </el-row> | ||
| 126 | <qlrCommonTable | ||
| 127 | :disabled="viewEdit" | ||
| 128 | @upDateQlrxxList="upDateQlrxxList" | ||
| 129 | :tableData="ruleForm.qlrList" | ||
| 130 | :gyfs="ruleForm.sldyList[0].gyfs" v-if="ruleForm.slsq.djywbm.includes('100')" /> | ||
| 131 | <div class="slxx_title title-block"> | ||
| 132 | 登记原因 | ||
| 133 | <div class="triangle"></div> | ||
| 134 | </div> | ||
| 135 | <el-row :gutter="10"> | ||
| 136 | <el-col v-if="ruleForm.fdcq2List.length > 0"> | ||
| 137 | <el-form-item v-if="ruleForm.slsq" label="登记原因:" prop="djyy"> | ||
| 138 | <el-input | ||
| 139 | class="textArea" | ||
| 140 | type="textarea" | ||
| 141 | maxlength="500" | ||
| 142 | show-word-limit | ||
| 143 | :disabled="!viewEdit" | ||
| 144 | v-model="ruleForm.fdcq2List[0].djyy"> | ||
| 145 | </el-input> | ||
| 146 | </el-form-item> | ||
| 147 | </el-col> | ||
| 148 | </el-row> | ||
| 149 | </div> | ||
| 150 | <el-row class="btn" v-if="isSave"> | ||
| 151 | <el-form-item> | ||
| 152 | <el-button type="primary" @click="onSubmit">保存</el-button> | ||
| 153 | </el-form-item> | ||
| 154 | </el-row> | ||
| 155 | </el-form> | ||
| 156 | </div> | ||
| 157 | </template> | ||
| 158 | <script> | ||
| 159 | import ywmix from "@/views/ywbl/mixin/index"; | ||
| 160 | import cfBdcdyTable from "@/views/workflow/components/cfBdcdyTable"; | ||
| 161 | import qjhTable from "@/views/workflow/components/qjhTable"; | ||
| 162 | import qlrCommonTable from "@/views/workflow/components/qlrCommonTable"; | ||
| 163 | import { | ||
| 164 | BatchInit, | ||
| 165 | Init, | ||
| 166 | saveBatchData, | ||
| 167 | saveData, | ||
| 168 | } from "@/api/workflow/fwsyqFlow.js"; | ||
| 169 | import { mapGetters } from "vuex"; | ||
| 170 | export default { | ||
| 171 | mixins: [ywmix], | ||
| 172 | computed: { | ||
| 173 | ...mapGetters(["dictData", "flag"]) | ||
| 174 | }, | ||
| 175 | components: { qlrCommonTable, cfBdcdyTable,qjhTable}, | ||
| 176 | data () { | ||
| 177 | return { | ||
| 178 | isSave: true, | ||
| 179 | loading: false, | ||
| 180 | disabled: true, | ||
| 181 | tdytOption: [], | ||
| 182 | ruleForm: { | ||
| 183 | cfdjList: [], //查封登记 | ||
| 184 | diyaqList: [], //抵押权 | ||
| 185 | fdcq2List: [], //房屋信息集合 | ||
| 186 | qlrList: [], //权利人 | ||
| 187 | ywrList: [], //义务人 | ||
| 188 | qlxxList: [], //权利信息集合 | ||
| 189 | sldyList: [], //受理不动产单元集合 | ||
| 190 | slsq: {}, //受理申请流程明细 | ||
| 191 | flow: {}, //受理申请流程明细 | ||
| 192 | sqrList: [], //申请人 | ||
| 193 | ssQlxxList: [], //上手权利信息 | ||
| 194 | user: {}, //用户 | ||
| 195 | zdjbxx: {}, //宗地基本信息 | ||
| 196 | }, | ||
| 197 | czrOptions: [], | ||
| 198 | czr: "", | ||
| 199 | //传递参数 | ||
| 200 | propsParam: this.$attrs, | ||
| 201 | //表单是否可操作 | ||
| 202 | viewEdit: true, | ||
| 203 | rules: {}, | ||
| 204 | gyfs: "", | ||
| 205 | bsmSlsq: this.$route.query.bsmSlsq, //受理申请标识码 | ||
| 206 | }; | ||
| 207 | }, | ||
| 208 | mounted (callbackfn, thisArg) { | ||
| 209 | let that = this | ||
| 210 | this.loading = true | ||
| 211 | this.viewEdit = this.$parent.currentSelectTab.ableOperation; | ||
| 212 | this.propsParam = this.$attrs; | ||
| 213 | var formdata = new FormData(); | ||
| 214 | formdata.append("bsmSldy", this.propsParam.bsmSldy); | ||
| 215 | formdata.append("djlx", this.propsParam.djlx); | ||
| 216 | formdata.append("bsmSlsq", this.bsmSlsq); | ||
| 217 | formdata.append("isEdit", this.viewEdit); | ||
| 218 | BatchInit(formdata).then((res) => { | ||
| 219 | setTimeout(() => { | ||
| 220 | this.loading = false | ||
| 221 | }, 200) | ||
| 222 | if (res.code == 200) { | ||
| 223 | this.ruleForm = res.result; | ||
| 224 | this.czrOptions = this.ruleForm.qlrList; | ||
| 225 | this.gyfs = this.ruleForm.sldyList[0].gyfs; | ||
| 226 | this.ruleForm.qlrList.forEach((item) => { | ||
| 227 | item.id = item.bsmSqr | ||
| 228 | if (item.sfczr == '1') { | ||
| 229 | that.czr = item.bsmSqr | ||
| 230 | } | ||
| 231 | }) | ||
| 232 | that.isSave = this.viewEdit | ||
| 233 | |||
| 234 | } else { | ||
| 235 | that.isSave = false | ||
| 236 | that.$confirm(res.message, '提示', { | ||
| 237 | cancelButtonText: '取消', | ||
| 238 | showConfirmButton: false, | ||
| 239 | type: 'warning' | ||
| 240 | }) | ||
| 241 | } | ||
| 242 | }).catch(() => { | ||
| 243 | this.loading = false | ||
| 244 | }) | ||
| 245 | }, | ||
| 246 | methods: { | ||
| 247 | /** | ||
| 248 | * @description: 更新权利人信息 | ||
| 249 | * @param {*} val | ||
| 250 | * @author: renchao | ||
| 251 | */ | ||
| 252 | upDateQlrxxList (val) { | ||
| 253 | if (!_.isEqual(val, this.ruleForm.qlrList)) { | ||
| 254 | this.ruleForm.qlrList = _.cloneDeep(val); | ||
| 255 | this.czrOptions = this.ruleForm.qlrList; | ||
| 256 | } | ||
| 257 | this.num = 0 | ||
| 258 | this.ruleForm.qlrList.forEach(item => { | ||
| 259 | if (item.id == this.czr) { | ||
| 260 | this.num++ | ||
| 261 | } | ||
| 262 | }) | ||
| 263 | if (this.num == 0) { | ||
| 264 | this.czr = '' | ||
| 265 | } | ||
| 266 | }, | ||
| 267 | /** | ||
| 268 | * @description: 是否持证人变化 | ||
| 269 | * @param {*} val | ||
| 270 | * @author: renchao | ||
| 271 | */ | ||
| 272 | updaterow () { | ||
| 273 | this.czr = ""; | ||
| 274 | }, | ||
| 275 | // 更新义务人信息 | ||
| 276 | /** | ||
| 277 | * @description: 更新义务人信息 | ||
| 278 | * @param {*} val | ||
| 279 | * @author: renchao | ||
| 280 | */ | ||
| 281 | upDateYwrxxList (val) { | ||
| 282 | this.ruleForm.ywrList = _.cloneDeep(val); | ||
| 283 | }, | ||
| 284 | /** | ||
| 285 | * @description: onSubmit | ||
| 286 | * @author: renchao | ||
| 287 | */ | ||
| 288 | onSubmit () { | ||
| 289 | let that = this; | ||
| 290 | if (this.ruleForm.qlrList.length == 0) { | ||
| 291 | this.$message({ | ||
| 292 | showClose: true, | ||
| 293 | message: "请确认权利人信息", | ||
| 294 | type: "error", | ||
| 295 | }); | ||
| 296 | return false; | ||
| 297 | } | ||
| 298 | if (this.ruleForm.sldyList[0].gyfs == "0") { | ||
| 299 | if (this.ruleForm.qlrList.length > 1) { | ||
| 300 | this.$message({ | ||
| 301 | showClose: true, | ||
| 302 | message: "共有方式:单独所有,权利人只能是一个人", | ||
| 303 | type: "error", | ||
| 304 | }); | ||
| 305 | return false; | ||
| 306 | } | ||
| 307 | this.ruleForm.qlrList[0].sfczr = "1"; | ||
| 308 | } else { | ||
| 309 | if (this.ruleForm.qlrList.length <= 1) { | ||
| 310 | this.$message({ | ||
| 311 | showClose: true, | ||
| 312 | message: | ||
| 313 | "共有方式:共同所有,按份所有,其他所有,权利人必须是两个以上", | ||
| 314 | type: "error", | ||
| 315 | }); | ||
| 316 | return false; | ||
| 317 | } | ||
| 318 | //是否分别持证 | ||
| 319 | if (this.ruleForm.sldyList[0].sqfbcz == "1") { | ||
| 320 | //是 | ||
| 321 | this.ruleForm.qlrList.forEach((item, index) => { | ||
| 322 | item.sfczr = "1"; | ||
| 323 | }); | ||
| 324 | } else { | ||
| 325 | if (that.czr === '') { | ||
| 326 | that.$message({ | ||
| 327 | showClose: true, | ||
| 328 | message: "请选择持证人", | ||
| 329 | type: "error" | ||
| 330 | }); | ||
| 331 | return false; | ||
| 332 | } | ||
| 333 | this.ruleForm.qlrList.forEach((item, index) => { | ||
| 334 | if (item.id == that.czr) { | ||
| 335 | item.sfczr = "1" | ||
| 336 | } else { | ||
| 337 | item.sfczr = "0" | ||
| 338 | } | ||
| 339 | }) | ||
| 340 | } | ||
| 341 | } | ||
| 342 | saveBatchData(this.ruleForm).then((res) => { | ||
| 343 | if (res.code === 200) { | ||
| 344 | this.$message({ | ||
| 345 | showClose: true, | ||
| 346 | message: "保存成功!", | ||
| 347 | type: "success", | ||
| 348 | }); | ||
| 349 | this.$store.dispatch("user/refreshPage", true); | ||
| 350 | } else { | ||
| 351 | this.$message({ | ||
| 352 | showClose: true, | ||
| 353 | message: res.message, | ||
| 354 | type: "error" | ||
| 355 | }) | ||
| 356 | } | ||
| 357 | }) | ||
| 358 | } | ||
| 359 | } | ||
| 360 | } | ||
| 361 | </script> | ||
| 362 | <style scoped lang="scss"> | ||
| 363 | @import "~@/styles/public.scss"; | ||
| 364 | |||
| 365 | /deep/.el-form { | ||
| 366 | display: flex; | ||
| 367 | flex-direction: column; | ||
| 368 | height: calc(100vh - 130px); | ||
| 369 | } | ||
| 370 | |||
| 371 | /deep/.el-form-item__label { | ||
| 372 | padding: 0; | ||
| 373 | } | ||
| 374 | |||
| 375 | /deep/.el-radio { | ||
| 376 | margin-right: 10px; | ||
| 377 | } | ||
| 378 | |||
| 379 | /deep/.el-select { | ||
| 380 | width: 100%; | ||
| 381 | } | ||
| 382 | |||
| 383 | /deep/.el-form-item { | ||
| 384 | margin-bottom: 3px; | ||
| 385 | } | ||
| 386 | |||
| 387 | .marginBot0 { | ||
| 388 | margin-bottom: 0 !important; | ||
| 389 | } | ||
| 390 | |||
| 391 | .slxx { | ||
| 392 | box-sizing: border-box; | ||
| 393 | } | ||
| 394 | |||
| 395 | .slxx_con { | ||
| 396 | flex: 1; | ||
| 397 | height: 100%; | ||
| 398 | background-color: #ffffff; | ||
| 399 | overflow-y: auto; | ||
| 400 | padding-right: 3px; | ||
| 401 | overflow-x: hidden; | ||
| 402 | } | ||
| 403 | |||
| 404 | .submit_btn { | ||
| 405 | height: 50px; | ||
| 406 | } | ||
| 407 | |||
| 408 | .btn { | ||
| 409 | text-align: center; | ||
| 410 | padding-top: 10px; | ||
| 411 | height: 36px; | ||
| 412 | background-color: #ffffff; | ||
| 413 | padding: 5px 0; | ||
| 414 | } | ||
| 415 | |||
| 416 | .textArea { | ||
| 417 | /deep/.el-textarea__inner { | ||
| 418 | min-height: 90px !important; | ||
| 419 | } | ||
| 420 | } | ||
| 421 | |||
| 422 | /deep/.el-form-item__label { | ||
| 423 | padding-bottom: 0px; | ||
| 424 | } | ||
| 425 | </style> |
src/views/ywbl/slsqxx/fwsyq/slxx.vue
deleted
100644 → 0
| 1 | <!-- | ||
| 2 | * @Description: | ||
| 3 | * @Autor: renchao | ||
| 4 | * @LastEditTime: 2024-01-31 10:13:28 | ||
| 5 | --> | ||
| 6 | <template> | ||
| 7 | <!-- 受理信息 --> | ||
| 8 | <div class="slxx"> | ||
| 9 | <el-form | ||
| 10 | :model="ruleForm" | ||
| 11 | :rules="rules" | ||
| 12 | ref="ruleForm" | ||
| 13 | v-Loading="loading" | ||
| 14 | :label-position="flag ? 'top' : ''" | ||
| 15 | :inline="flag" | ||
| 16 | label-width="120px"> | ||
| 17 | <div class="slxx_con" :class="flag ? 'formMarginBot0' : ''"> | ||
| 18 | <div class="slxx_title title-block"> | ||
| 19 | 申请业务信息 | ||
| 20 | <div class="triangle"></div> | ||
| 21 | </div> | ||
| 22 | <el-row :gutter="10"> | ||
| 23 | <el-col :span="8"> | ||
| 24 | <el-form-item label="业务号:" prop="ywh"> | ||
| 25 | <el-input disabled v-model="ruleForm.ywh"></el-input> | ||
| 26 | </el-form-item> | ||
| 27 | </el-col> | ||
| 28 | <el-col :span="8"> | ||
| 29 | <el-form-item label="受理人员:" prop="slry"> | ||
| 30 | <el-input disabled v-model="ruleForm.slry"></el-input> | ||
| 31 | </el-form-item> | ||
| 32 | </el-col> | ||
| 33 | <el-col :span="8"> | ||
| 34 | <el-form-item label="受理时间:" prop="slsj"> | ||
| 35 | <el-input disabled v-model="ruleForm.slsj"></el-input> | ||
| 36 | </el-form-item> | ||
| 37 | </el-col> | ||
| 38 | </el-row> | ||
| 39 | <el-row :gutter="10"> | ||
| 40 | <el-col :span="8"> | ||
| 41 | <el-form-item label="权利类型:" prop="qllx"> | ||
| 42 | <el-select | ||
| 43 | disabled | ||
| 44 | v-model="ruleForm.qllx" | ||
| 45 | filterable | ||
| 46 | clearable | ||
| 47 | placeholder="请选择权利类型"> | ||
| 48 | <el-option | ||
| 49 | v-for="item in dictData['A8']" | ||
| 50 | :key="item.dcode" | ||
| 51 | :label="item.dname" | ||
| 52 | :value="item.dcode"> | ||
| 53 | </el-option> | ||
| 54 | </el-select> | ||
| 55 | </el-form-item> | ||
| 56 | </el-col> | ||
| 57 | <el-col :span="8"> | ||
| 58 | <el-form-item label="登记类型:" prop="djlx"> | ||
| 59 | <el-select | ||
| 60 | disabled | ||
| 61 | v-model="ruleForm.djlx" | ||
| 62 | filterable | ||
| 63 | clearable | ||
| 64 | placeholder="请选择登记类型"> | ||
| 65 | <el-option | ||
| 66 | v-for="item in dictData['A21']" | ||
| 67 | :key="item.dcode" | ||
| 68 | :label="item.dname" | ||
| 69 | :value="item.dcode"> | ||
| 70 | </el-option> | ||
| 71 | </el-select> | ||
| 72 | </el-form-item> | ||
| 73 | </el-col> | ||
| 74 | <el-col :span="8"> | ||
| 75 | <el-form-item label="登记情形:" prop="djqx"> | ||
| 76 | <el-input disabled v-model="ruleForm.djqxmc"></el-input> | ||
| 77 | </el-form-item> | ||
| 78 | </el-col> | ||
| 79 | </el-row> | ||
| 80 | <div class="slxx_title title-block"> | ||
| 81 | <el-row> | ||
| 82 | <el-col :span="20"> | ||
| 83 | 不动产单元情况 | ||
| 84 | </el-col> | ||
| 85 | <el-col :span="4" v-if="ruleForm.sldy.djlx=='500'"> | ||
| 86 | <el-form-item label="是否创建证书:" style="height:24px"> | ||
| 87 | <el-radio-group v-model="ruleForm.sldy.sfxysczs"> | ||
| 88 | <el-radio label="1">是</el-radio> | ||
| 89 | <el-radio label="0">否</el-radio> | ||
| 90 | </el-radio-group> | ||
| 91 | </el-form-item> | ||
| 92 | </el-col> | ||
| 93 | </el-row> | ||
| 94 | <div class="triangle"></div> | ||
| 95 | </div> | ||
| 96 | <el-row :gutter="10"> | ||
| 97 | <el-col :span="8"> | ||
| 98 | <el-form-item label="宗地代码:" prop="zddm"> | ||
| 99 | <el-input disabled v-model="ruleForm.bdcdyh"></el-input> | ||
| 100 | </el-form-item> | ||
| 101 | </el-col> | ||
| 102 | <el-col :span="8"> | ||
| 103 | <el-form-item label="不动产单元号:" prop="bdcdyh"> | ||
| 104 | <el-input disabled v-model="ruleForm.bdcdyh"></el-input> | ||
| 105 | </el-form-item> | ||
| 106 | </el-col> | ||
| 107 | <el-col :span="8"> | ||
| 108 | <el-form-item label="权利性质:" prop="qlxzmc"> | ||
| 109 | <el-input disabled v-model="ruleForm.qlxzmc"></el-input> | ||
| 110 | </el-form-item> | ||
| 111 | </el-col> | ||
| 112 | </el-row> | ||
| 113 | <el-row :gutter="10"> | ||
| 114 | <el-col :span="8"> | ||
| 115 | <el-form-item label="自然幢号:" prop="zrzh"> | ||
| 116 | <el-input disabled v-model="ruleForm.zrzDetail.zrzh"></el-input> | ||
| 117 | </el-form-item> | ||
| 118 | </el-col> | ||
| 119 | <el-col :span="8"> | ||
| 120 | <el-form-item label="户不动产单元号:" prop="ghytmc"> | ||
| 121 | <el-input disabled v-model="ruleForm.ghytmc"></el-input> | ||
| 122 | </el-form-item> | ||
| 123 | </el-col> | ||
| 124 | <el-col :span="8"> | ||
| 125 | <el-form-item label="登记状态:" prop="djzt"> | ||
| 126 | <el-select disabled v-model="ruleForm.djzt" filterable clearable> | ||
| 127 | <el-option | ||
| 128 | v-for="item in djztList" | ||
| 129 | :key="item.value" | ||
| 130 | :label="item.label" | ||
| 131 | :value="item.value"> | ||
| 132 | </el-option> | ||
| 133 | </el-select> | ||
| 134 | </el-form-item> | ||
| 135 | </el-col> | ||
| 136 | </el-row> | ||
| 137 | <el-row :gutter="10"> | ||
| 138 | <el-col :span="8"> | ||
| 139 | <el-form-item label="图幅丘幢号:" prop="tfqzh"> | ||
| 140 | <el-input disabled v-model="ruleForm.tfqzh"></el-input> | ||
| 141 | </el-form-item> | ||
| 142 | </el-col> | ||
| 143 | |||
| 144 | <el-col :span="16"> | ||
| 145 | <el-form-item label="坐落:" prop="zl"> | ||
| 146 | <el-input disabled v-model="ruleForm.zl"></el-input> | ||
| 147 | </el-form-item> | ||
| 148 | </el-col> | ||
| 149 | </el-row> | ||
| 150 | <el-row :gutter="10"> | ||
| 151 | <el-col :span="8"> | ||
| 152 | <el-form-item label="房屋用途:"> | ||
| 153 | <el-input disabled v-model="ruleForm.ytmc"></el-input> | ||
| 154 | </el-form-item> | ||
| 155 | </el-col> | ||
| 156 | <el-col :span="8"> | ||
| 157 | <el-form-item label="房屋性质:"> | ||
| 158 | <el-input disabled v-model="ruleForm.fwxz"></el-input> | ||
| 159 | </el-form-item> | ||
| 160 | </el-col> | ||
| 161 | <el-col :span="8"> | ||
| 162 | <el-form-item label="房屋结构:"> | ||
| 163 | <el-input disabled v-model="ruleForm.fwjg"></el-input> | ||
| 164 | </el-form-item> | ||
| 165 | </el-col> | ||
| 166 | </el-row> | ||
| 167 | <div class="slxx_title title-block"> | ||
| 168 | 土地用途 | ||
| 169 | <div class="triangle"></div> | ||
| 170 | </div> | ||
| 171 | <tdytTable | ||
| 172 | :ableOperation="viewEdit" | ||
| 173 | :tableData="ruleForm.tdytqxList" | ||
| 174 | @upDateTdytxxList="upDateTdytxxList" /> | ||
| 175 | <div class="slxx_title title-block"> | ||
| 176 | 权利人信息 | ||
| 177 | <div class="triangle"></div> | ||
| 178 | </div> | ||
| 179 | <el-row :gutter="10"> | ||
| 180 | <el-col :span="14"> | ||
| 181 | <el-form-item label="共有方式:"> | ||
| 182 | <el-radio-group :disabled="!viewEdit" v-model="ruleForm.gyfs"> | ||
| 183 | <el-radio label="1">单独所有</el-radio> | ||
| 184 | <el-radio label="2">共同共有</el-radio> | ||
| 185 | <el-radio label="3">按份所有</el-radio> | ||
| 186 | </el-radio-group> | ||
| 187 | </el-form-item> | ||
| 188 | </el-col> | ||
| 189 | |||
| 190 | <el-col :span="5" v-show="ruleForm.gyfs != '1'"> | ||
| 191 | <el-form-item label="是否分别持证:"> | ||
| 192 | <el-radio-group | ||
| 193 | v-model="ruleForm.sffbcz" | ||
| 194 | :disabled="!viewEdit" | ||
| 195 | @input="updaterow()"> | ||
| 196 | <el-radio label="1">是</el-radio> | ||
| 197 | <el-radio label="0">否</el-radio> | ||
| 198 | </el-radio-group> | ||
| 199 | </el-form-item> | ||
| 200 | </el-col> | ||
| 201 | <el-col | ||
| 202 | :span="5" | ||
| 203 | v-show="ruleForm.gyfs != '0' && ruleForm.sffbcz == '0'"> | ||
| 204 | <el-form-item label="持证人:"> | ||
| 205 | <el-select | ||
| 206 | v-model="czr" | ||
| 207 | placeholder="持证人" | ||
| 208 | :disabled="!viewEdit"> | ||
| 209 | <el-option | ||
| 210 | v-for="(item,index) in czrOptions" | ||
| 211 | :key="index" | ||
| 212 | :label="item.sqrmc" | ||
| 213 | :value="item.id"> | ||
| 214 | </el-option> | ||
| 215 | </el-select> | ||
| 216 | </el-form-item> | ||
| 217 | </el-col> | ||
| 218 | </el-row> | ||
| 219 | <qlrCommonTable | ||
| 220 | :tableData="ruleForm.qlrList" | ||
| 221 | @upDateQlrxxList="upDateQlrxxList" | ||
| 222 | :gyfs="ruleForm.gyfs" | ||
| 223 | :disabled="viewEdit" /> | ||
| 224 | <div class="slxx_title title-block"> | ||
| 225 | 登记原因 | ||
| 226 | <div class="triangle"></div> | ||
| 227 | </div> | ||
| 228 | <el-row :gutter="10"> | ||
| 229 | <el-col> | ||
| 230 | <el-form-item label="登记原因:" prop="djyy"> | ||
| 231 | <el-input | ||
| 232 | class="textArea" | ||
| 233 | type="textarea" | ||
| 234 | maxlength="500" | ||
| 235 | show-word-limit | ||
| 236 | :disabled="!viewEdit" | ||
| 237 | v-model="ruleForm.djyy"> | ||
| 238 | </el-input> | ||
| 239 | </el-form-item> | ||
| 240 | </el-col> | ||
| 241 | </el-row> | ||
| 242 | </div> | ||
| 243 | <el-row class="btn" v-if="isSave"> | ||
| 244 | <el-form-item> | ||
| 245 | <el-button type="primary" @click="onSubmit">保存</el-button> | ||
| 246 | </el-form-item> | ||
| 247 | </el-row> | ||
| 248 | </el-form> | ||
| 249 | </div> | ||
| 250 | </template> | ||
| 251 | <script> | ||
| 252 | import ywmix from "@/views/ywbl/mixin/index"; | ||
| 253 | import qlrCommonTable from "@/views/workflow/components/qlrCommonTable"; | ||
| 254 | import tdytTable from "@/views/workflow/components/tdytTable"; | ||
| 255 | import { Init } from "@/api/workflow/fwsyqFlow.js"; | ||
| 256 | import { mapGetters } from "vuex"; | ||
| 257 | export default { | ||
| 258 | mixins: [ywmix], | ||
| 259 | mounted () { | ||
| 260 | let that = this | ||
| 261 | this.loading = true | ||
| 262 | this.viewEdit = this.$parent.currentSelectTab.ableOperation; | ||
| 263 | this.propsParam = this.$attrs; | ||
| 264 | var formdata = new FormData(); | ||
| 265 | formdata.append("bsmSldy", this.propsParam.bsmSldy); | ||
| 266 | Init(formdata).then((res) => { | ||
| 267 | setTimeout(() => { | ||
| 268 | this.loading = false | ||
| 269 | }, 200) | ||
| 270 | if (res.code === 200 && res.result) { | ||
| 271 | this.ruleForm = { | ||
| 272 | ...res.result, | ||
| 273 | ...res.result.zdjbxxdatas, | ||
| 274 | ...res.result.qlxxdatas, | ||
| 275 | ...res.result.jsydsyqdatas, | ||
| 276 | }; | ||
| 277 | this.ruleForm.qlrList.forEach((item) => { | ||
| 278 | item.id = item.bsmSqr | ||
| 279 | if (item.sfczr == '1') { | ||
| 280 | that.czr = item.bsmSqr | ||
| 281 | } | ||
| 282 | }); | ||
| 283 | this.czrOptions = this.ruleForm.qlrList; | ||
| 284 | that.isSave = this.viewEdit | ||
| 285 | } else { | ||
| 286 | that.isSave = false | ||
| 287 | that.$confirm(res.message, '提示', { | ||
| 288 | cancelButtonText: '取消', | ||
| 289 | showConfirmButton: false, | ||
| 290 | type: 'warning' | ||
| 291 | }) | ||
| 292 | } | ||
| 293 | }).catch(() => { | ||
| 294 | this.loading = false | ||
| 295 | this.isSave = false | ||
| 296 | }) | ||
| 297 | }, | ||
| 298 | components: { qlrCommonTable, tdytTable }, | ||
| 299 | computed: { | ||
| 300 | ...mapGetters(["dictData", "flag"]), | ||
| 301 | }, | ||
| 302 | data () { | ||
| 303 | return { | ||
| 304 | isSave: true, | ||
| 305 | // 键名转换,方法默认是label和children进行树状渲染 | ||
| 306 | normalizer (node) { | ||
| 307 | //方法 | ||
| 308 | if (node.children == null || node.children == "null") { | ||
| 309 | delete node.children; | ||
| 310 | } | ||
| 311 | return { | ||
| 312 | id: node.dcode, | ||
| 313 | label: node.dname, | ||
| 314 | }; | ||
| 315 | }, | ||
| 316 | loading: false, | ||
| 317 | //表单是否可操作 | ||
| 318 | viewEdit: false, | ||
| 319 | disabled: true, | ||
| 320 | tdytOption: [], | ||
| 321 | czrOptions: [], | ||
| 322 | czr: "", | ||
| 323 | ruleForm: { | ||
| 324 | ywh: "", | ||
| 325 | slry: "", | ||
| 326 | slsj: "", | ||
| 327 | qllx: "", | ||
| 328 | djlx: "", | ||
| 329 | djqx: "", | ||
| 330 | // 宗地代码 | ||
| 331 | zddm: "", | ||
| 332 | bdcdyh: "", | ||
| 333 | qlxzmc: "", | ||
| 334 | qlrxx: [], | ||
| 335 | // 自然幢号 | ||
| 336 | zrzh: "", | ||
| 337 | // 户不动产单元号 | ||
| 338 | ghytmc: "", | ||
| 339 | djzt: "", | ||
| 340 | // 图幅丘幢号 | ||
| 341 | tfqzh: "", | ||
| 342 | zl: "", | ||
| 343 | // 房屋用途 | ||
| 344 | fwyt: "", | ||
| 345 | fwxz: "", | ||
| 346 | fwjg: "", | ||
| 347 | // 权利人信息 | ||
| 348 | gyfs: "1", | ||
| 349 | // 是否分别持证 | ||
| 350 | sffbcz: "", | ||
| 351 | // 持证人 | ||
| 352 | czr: "", | ||
| 353 | djyy: "", | ||
| 354 | }, | ||
| 355 | //传递参数 | ||
| 356 | propsParam: {}, | ||
| 357 | rules: { | ||
| 358 | djyy: [ | ||
| 359 | { required: true, message: '请输入登记原因', trigger: 'blur' } | ||
| 360 | ] | ||
| 361 | } | ||
| 362 | } | ||
| 363 | }, | ||
| 364 | methods: { | ||
| 365 | /** | ||
| 366 | * @description: 更新土地用途信息 | ||
| 367 | * @param {*} val | ||
| 368 | * @author: renchao | ||
| 369 | */ | ||
| 370 | upDateTdytxxList (val) { | ||
| 371 | this.ruleForm.tdytqxList && (this.ruleForm.tdytqxList = _.cloneDeep(val)); | ||
| 372 | this.czrOptions = this.ruleForm.qlrData; | ||
| 373 | this.key++; | ||
| 374 | }, | ||
| 375 | /** | ||
| 376 | * @description: 更新权利人信息 | ||
| 377 | * @param {*} val | ||
| 378 | * @author: renchao | ||
| 379 | */ | ||
| 380 | upDateQlrxxList (val) { | ||
| 381 | if (!_.isEqual(val, this.ruleForm.qlrList)) { | ||
| 382 | this.ruleForm.qlrList = _.cloneDeep(val); | ||
| 383 | this.czrOptions = this.ruleForm.qlrList; | ||
| 384 | } | ||
| 385 | this.num = 0 | ||
| 386 | this.ruleForm.qlrList.forEach(item => { | ||
| 387 | if (item.id == this.czr) { | ||
| 388 | this.num++ | ||
| 389 | } | ||
| 390 | }) | ||
| 391 | if (this.num == 0) { | ||
| 392 | this.czr = '' | ||
| 393 | } | ||
| 394 | }, | ||
| 395 | /** | ||
| 396 | * @description: 是否持证人变化 | ||
| 397 | * @param {*} val | ||
| 398 | * @author: renchao | ||
| 399 | */ | ||
| 400 | updaterow () { | ||
| 401 | this.czr = ""; | ||
| 402 | }, | ||
| 403 | /** | ||
| 404 | * @description: list | ||
| 405 | * @param {*} bsmSldy | ||
| 406 | * @author: renchao | ||
| 407 | */ | ||
| 408 | list (bsmSldy) { | ||
| 409 | var formdata = new FormData(); | ||
| 410 | formdata.append("bsmSldy", bsmSldy); | ||
| 411 | formdata.append("isEdit", this.viewEdit); | ||
| 412 | Init(formdata).then((res) => { | ||
| 413 | if (res.code === 200 && res.result) { | ||
| 414 | this.ruleForm = { | ||
| 415 | ...res.result, | ||
| 416 | ...res.result.zdjbxxdatas, | ||
| 417 | ...res.result.qlxxdatas, | ||
| 418 | ...res.result.jsydsyqdatas, | ||
| 419 | }; | ||
| 420 | } else { | ||
| 421 | this.$message.error(res.message); | ||
| 422 | } | ||
| 423 | }); | ||
| 424 | }, | ||
| 425 | /** | ||
| 426 | * @description: onSubmit | ||
| 427 | * @author: renchao | ||
| 428 | */ | ||
| 429 | onSubmit () { | ||
| 430 | let that = this; | ||
| 431 | let arr = this.ruleForm.tdytqxList.filter((item) => !item.yt); | ||
| 432 | if (arr.length > 0) { | ||
| 433 | this.$message({ | ||
| 434 | showClose: true, | ||
| 435 | message: "土地用途不能为空", | ||
| 436 | type: "error", | ||
| 437 | }); | ||
| 438 | return false; | ||
| 439 | } | ||
| 440 | if (this.ruleForm.qlrList.length == 0) { | ||
| 441 | this.$message({ | ||
| 442 | showClose: true, | ||
| 443 | message: "请确认权利人信息", | ||
| 444 | type: "error", | ||
| 445 | }); | ||
| 446 | return false; | ||
| 447 | } | ||
| 448 | |||
| 449 | if (this.ruleForm.gyfs == "0") { | ||
| 450 | if (this.ruleForm.qlrList.length > 1) { | ||
| 451 | this.$message({ | ||
| 452 | showClose: true, | ||
| 453 | message: "共有方式:单独所有,权利人只能是一个人", | ||
| 454 | type: "error", | ||
| 455 | }); | ||
| 456 | return false; | ||
| 457 | } | ||
| 458 | this.ruleForm.qlrList[0].sfczr = "1"; | ||
| 459 | } else { | ||
| 460 | if (this.ruleForm.qlrList.length <= 1) { | ||
| 461 | this.$message({ | ||
| 462 | showClose: true, | ||
| 463 | message: | ||
| 464 | "共有方式:共同所有,按份所有,其他所有,权利人必须是两个以上", | ||
| 465 | type: "error", | ||
| 466 | }); | ||
| 467 | return false; | ||
| 468 | } | ||
| 469 | //是否分别持证 | ||
| 470 | if (this.ruleForm.sqfbcz == "1") { | ||
| 471 | //是 | ||
| 472 | this.ruleForm.qlrList.forEach((item, index) => { | ||
| 473 | item.sfczr = "1"; | ||
| 474 | }); | ||
| 475 | } else { | ||
| 476 | if (that.czr === '') { | ||
| 477 | that.$message({ | ||
| 478 | showClose: true, | ||
| 479 | message: "请选择持证人", | ||
| 480 | type: "error" | ||
| 481 | }) | ||
| 482 | return false; | ||
| 483 | } | ||
| 484 | this.ruleForm.qlrList.forEach((item, index) => { | ||
| 485 | if (item.id == that.czr) { | ||
| 486 | item.sfczr = "1" | ||
| 487 | } else { | ||
| 488 | item.sfczr = "0" | ||
| 489 | } | ||
| 490 | }) | ||
| 491 | } | ||
| 492 | } | ||
| 493 | fristReg(this.ruleForm).then((res) => { | ||
| 494 | if (res.code === 200 && res.result) { | ||
| 495 | console.log(res); | ||
| 496 | //this.ruleForm = { ...res.result, ...res.result.zdjbxxdatas, ...res.result.qlxxdatas, ...res.result.jsydsyqdatas } | ||
| 497 | } | ||
| 498 | }); | ||
| 499 | }, | ||
| 500 | }, | ||
| 501 | }; | ||
| 502 | </script> | ||
| 503 | <style scoped lang="scss"> | ||
| 504 | @import "~@/styles/public.scss"; | ||
| 505 | |||
| 506 | /deep/.el-form { | ||
| 507 | display: flex; | ||
| 508 | flex-direction: column; | ||
| 509 | height: calc(100vh - 130px); | ||
| 510 | } | ||
| 511 | |||
| 512 | /deep/.el-form-item__label { | ||
| 513 | padding: 0; | ||
| 514 | } | ||
| 515 | |||
| 516 | /deep/.el-radio { | ||
| 517 | margin-right: 10px; | ||
| 518 | } | ||
| 519 | |||
| 520 | /deep/.el-select { | ||
| 521 | width: 100%; | ||
| 522 | } | ||
| 523 | |||
| 524 | /deep/.el-form-item { | ||
| 525 | margin-bottom: 3px; | ||
| 526 | } | ||
| 527 | |||
| 528 | .marginBot0 { | ||
| 529 | margin-bottom: 0 !important; | ||
| 530 | } | ||
| 531 | |||
| 532 | .slxx { | ||
| 533 | box-sizing: border-box; | ||
| 534 | } | ||
| 535 | |||
| 536 | .slxx_con { | ||
| 537 | flex: 1; | ||
| 538 | height: 100%; | ||
| 539 | background-color: #ffffff; | ||
| 540 | overflow-y: auto; | ||
| 541 | padding-right: 3px; | ||
| 542 | overflow-x: hidden; | ||
| 543 | } | ||
| 544 | |||
| 545 | .submit_btn { | ||
| 546 | height: 50px; | ||
| 547 | } | ||
| 548 | |||
| 549 | .btn { | ||
| 550 | text-align: center; | ||
| 551 | padding-top: 10px; | ||
| 552 | height: 36px; | ||
| 553 | background-color: #ffffff; | ||
| 554 | padding: 5px 0; | ||
| 555 | } | ||
| 556 | |||
| 557 | .textArea { | ||
| 558 | /deep/.el-textarea__inner { | ||
| 559 | min-height: 90px !important; | ||
| 560 | } | ||
| 561 | } | ||
| 562 | |||
| 563 | /deep/.el-form-item__label { | ||
| 564 | padding-bottom: 0px; | ||
| 565 | } | ||
| 566 | </style> |
| 1 | <!-- | ||
| 2 | * @Description: | ||
| 3 | * @Autor: renchao | ||
| 4 | * @LastEditTime: 2024-01-31 10:14:06 | ||
| 5 | --> | ||
| 6 | <template> | ||
| 7 | <!-- 受理信息 --> | ||
| 8 | <div class="slxx"> | ||
| 9 | <el-form | ||
| 10 | :model="ruleForm" | ||
| 11 | :rules="rules" | ||
| 12 | :class="{ readonly: editDisabled }" | ||
| 13 | v-Loading="loading" | ||
| 14 | ref="ruleForm" | ||
| 15 | :label-position="flag ? 'top' : ''" | ||
| 16 | :inline="flag" | ||
| 17 | label-width="120px"> | ||
| 18 | <div class="slxx_con" :class="flag ? 'formMarginBot0' : ''"> | ||
| 19 | <div class="slxx_title title-block"> | ||
| 20 | 申请业务信息 | ||
| 21 | <div class="triangle"></div> | ||
| 22 | </div> | ||
| 23 | <el-row :gutter="10"> | ||
| 24 | <el-col :span="8"> | ||
| 25 | <el-form-item label="业务号:"> | ||
| 26 | <el-input disabled v-model="ruleForm.flow.ywh"></el-input> | ||
| 27 | </el-form-item> | ||
| 28 | </el-col> | ||
| 29 | <el-col :span="8"> | ||
| 30 | <el-form-item label="受理人员:"> | ||
| 31 | <el-input disabled v-model="ruleForm.slsq.slry"></el-input> | ||
| 32 | </el-form-item> | ||
| 33 | </el-col> | ||
| 34 | <el-col :span="8"> | ||
| 35 | <el-form-item label="受理时间:"> | ||
| 36 | <el-input disabled v-model="ruleForm.slsq.slsj"></el-input> | ||
| 37 | </el-form-item> | ||
| 38 | </el-col> | ||
| 39 | </el-row> | ||
| 40 | <el-row :gutter="10"> | ||
| 41 | <el-col :span="8"> | ||
| 42 | <el-form-item label="权利类型:"> | ||
| 43 | <el-input disabled v-model="ruleForm.sldy.qllxmc"></el-input> | ||
| 44 | </el-form-item> | ||
| 45 | </el-col> | ||
| 46 | <el-col :span="8"> | ||
| 47 | <el-form-item label="登记类型:"> | ||
| 48 | <el-input disabled v-model="ruleForm.sldy.djlxmc"></el-input> | ||
| 49 | </el-form-item> | ||
| 50 | </el-col> | ||
| 51 | <el-col :span="8"> | ||
| 52 | <el-form-item label="登记情形:"> | ||
| 53 | <el-input disabled v-model="ruleForm.slsq.djqxmc"></el-input> | ||
| 54 | </el-form-item> | ||
| 55 | </el-col> | ||
| 56 | </el-row> | ||
| 57 | <div class="slxx_title title-block"> | ||
| 58 | <el-row> | ||
| 59 | <el-col :span="20"> | ||
| 60 | 不动产单元情况 | ||
| 61 | </el-col> | ||
| 62 | <el-col :span="4" v-if="ruleForm.sldy.djlx=='500'"> | ||
| 63 | <el-form-item label="是否创建证书:" style="height:24px"> | ||
| 64 | <el-radio-group v-model="ruleForm.sldy.sfxysczs"> | ||
| 65 | <el-radio label="1">是</el-radio> | ||
| 66 | <el-radio label="0">否</el-radio> | ||
| 67 | </el-radio-group> | ||
| 68 | </el-form-item> | ||
| 69 | </el-col> | ||
| 70 | </el-row> | ||
| 71 | <div class="triangle"></div> | ||
| 72 | </div> | ||
| 73 | <el-row :gutter="10"> | ||
| 74 | <el-col :span="8"> | ||
| 75 | <el-form-item label="宗地代码:"> | ||
| 76 | <el-input v-model="ruleForm.zdjbxx.zddm" disabled></el-input> | ||
| 77 | </el-form-item> | ||
| 78 | </el-col> | ||
| 79 | <el-col :span="8"> | ||
| 80 | <el-form-item label="不动产单元号:"> | ||
| 81 | <el-input v-model="ruleForm.sldy.bdcdyh" disabled></el-input> | ||
| 82 | </el-form-item> | ||
| 83 | </el-col> | ||
| 84 | <el-col :span="8"> | ||
| 85 | <el-form-item label="权利性质:"> | ||
| 86 | <treeselect | ||
| 87 | v-model="ruleForm.zdjbxx.qlxz" | ||
| 88 | noOptionsText="暂无数据" | ||
| 89 | :default-expand-level="1" | ||
| 90 | :disabled="!viewEdit" | ||
| 91 | placeholder="" | ||
| 92 | :normalizer="normalizer" | ||
| 93 | :show-count="true" | ||
| 94 | :options="dictData['A9']" /> | ||
| 95 | </el-form-item> | ||
| 96 | </el-col> | ||
| 97 | </el-row> | ||
| 98 | <el-row :gutter="10"> | ||
| 99 | <el-col :span="8"> | ||
| 100 | <el-form-item label="使用权面积:"> | ||
| 101 | <div class="flex"> | ||
| 102 | <el-input | ||
| 103 | maxlength="12" | ||
| 104 | :disabled="!viewEdit" | ||
| 105 | v-model="ruleForm.jsydsyq.syqmj" | ||
| 106 | oninput="value = (value.match(/^\d*(\.?\d{0,2})/g)[0]) || null"></el-input> | ||
| 107 | <el-select disabled v-model="mjdw" style="width: 68px"> | ||
| 108 | <el-option | ||
| 109 | v-for="item in dictData['A7']" | ||
| 110 | :key="item.dcode" | ||
| 111 | :label="item.dname" | ||
| 112 | :value="item.dcode"> | ||
| 113 | </el-option> | ||
| 114 | </el-select> | ||
| 115 | </div> | ||
| 116 | </el-form-item> | ||
| 117 | </el-col> | ||
| 118 | <el-col :span="8"> | ||
| 119 | <el-form-item label="权利设定方式:"> | ||
| 120 | <el-select v-model="ruleForm.zdjbxx.qlsdfs" :disabled="!viewEdit"> | ||
| 121 | <el-option | ||
| 122 | v-for="item in dictData['A10']" | ||
| 123 | :key="item.dcode" | ||
| 124 | :label="item.dname" | ||
| 125 | :value="item.dcode"> | ||
| 126 | </el-option> | ||
| 127 | </el-select> | ||
| 128 | </el-form-item> | ||
| 129 | </el-col> | ||
| 130 | <el-col :span="8"> | ||
| 131 | <el-form-item label="取得价格:"> | ||
| 132 | <div style="display: flex"> | ||
| 133 | <el-input | ||
| 134 | maxlength="11" | ||
| 135 | :disabled="!viewEdit" | ||
| 136 | v-model="ruleForm.jsydsyq.qdjg" | ||
| 137 | style="width: 500%" | ||
| 138 | oninput="value = (value.match(/^\d*(\.?\d{0,2})/g)[0]) || null"></el-input> | ||
| 139 | <el-select v-model="ruleForm.jsydsyq.jedw" :disabled="!viewEdit"> | ||
| 140 | <el-option | ||
| 141 | v-for="item in dictData['A57']" | ||
| 142 | :key="item.dcode" | ||
| 143 | :label="item.dname" | ||
| 144 | :value="item.dcode"> | ||
| 145 | </el-option> | ||
| 146 | </el-select> | ||
| 147 | </div> | ||
| 148 | </el-form-item> | ||
| 149 | </el-col> | ||
| 150 | |||
| 151 | <el-col :span="16"> | ||
| 152 | <el-form-item label="坐落:"> | ||
| 153 | <el-input maxlength="100" :disabled="!viewEdit" v-model="ruleForm.sldy.zl"></el-input> | ||
| 154 | </el-form-item> | ||
| 155 | </el-col> | ||
| 156 | </el-row> | ||
| 157 | <el-row :gutter="10"> | ||
| 158 | <el-col> | ||
| 159 | <el-form-item label="附记:" prop="fj"> | ||
| 160 | <el-input | ||
| 161 | type="textarea" | ||
| 162 | maxlength="500" | ||
| 163 | :disabled="!viewEdit" | ||
| 164 | show-word-limit | ||
| 165 | v-model="ruleForm.jsydsyq.fj"></el-input> | ||
| 166 | </el-form-item> | ||
| 167 | </el-col> | ||
| 168 | </el-row> | ||
| 169 | <div class="slxx_title title-block"> | ||
| 170 | 土地用途 | ||
| 171 | <div class="triangle"></div> | ||
| 172 | </div> | ||
| 173 | <tdytTable | ||
| 174 | :ableOperation="viewEdit" | ||
| 175 | :tableData="ruleForm.tdytqxList" | ||
| 176 | @upDateTdytxxList="upDateTdytxxList" /> | ||
| 177 | <div class="slxx_title title-block"> | ||
| 178 | 权利人信息 | ||
| 179 | <div class="triangle"></div> | ||
| 180 | </div> | ||
| 181 | <el-row :gutter="10"> | ||
| 182 | <el-col :span="12"> | ||
| 183 | <el-form-item label="共有方式:"> | ||
| 184 | <el-radio-group | ||
| 185 | :disabled="!viewEdit" | ||
| 186 | v-model="ruleForm.sldy.gyfs"> | ||
| 187 | <el-radio label="0">单独所有</el-radio> | ||
| 188 | <el-radio label="1">共同共有</el-radio> | ||
| 189 | <el-radio label="2">按份所有</el-radio> | ||
| 190 | <el-radio label="3">其它共有</el-radio> | ||
| 191 | </el-radio-group> | ||
| 192 | </el-form-item> | ||
| 193 | </el-col> | ||
| 194 | <el-col :span="6" v-show="ruleForm.sldy.gyfs != '0'"> | ||
| 195 | <el-form-item label="是否分别持证:"> | ||
| 196 | <el-radio-group | ||
| 197 | v-model="ruleForm.sldy.sqfbcz" | ||
| 198 | :disabled="!viewEdit" | ||
| 199 | @input="updaterow()"> | ||
| 200 | <el-radio :label="1">是</el-radio> | ||
| 201 | <el-radio :label="0">否</el-radio> | ||
| 202 | </el-radio-group> | ||
| 203 | </el-form-item> | ||
| 204 | </el-col> | ||
| 205 | <el-col | ||
| 206 | :span="6" | ||
| 207 | v-show="ruleForm.sldy.sqfbcz == '0' && ruleForm.sldy.gyfs != '0'"> | ||
| 208 | <el-form-item label="持证人:"> | ||
| 209 | <el-select | ||
| 210 | v-model="czr" | ||
| 211 | placeholder="持证人" | ||
| 212 | :disabled="!viewEdit"> | ||
| 213 | <el-option | ||
| 214 | v-for="(item, index) in czrOptions" | ||
| 215 | :key="index" | ||
| 216 | :label="item.sqrmc" | ||
| 217 | :value="item.id"> | ||
| 218 | </el-option> | ||
| 219 | </el-select> | ||
| 220 | </el-form-item> | ||
| 221 | </el-col> | ||
| 222 | </el-row> | ||
| 223 | <qlrCommonTable | ||
| 224 | :tableData="ruleForm.qlrList" | ||
| 225 | :disabled="viewEdit" | ||
| 226 | @upDateQlrxxList="upDateQlrxxList" | ||
| 227 | :key="key" | ||
| 228 | :gyfs="ruleForm.sldy.gyfs" /> | ||
| 229 | |||
| 230 | <div v-if="ruleForm.ywrList && ruleForm.ywrList.length > 0 && ruleForm.qlxx.djlx==200"> | ||
| 231 | <div class="slxx_title title-block"> | ||
| 232 | 义务人信息 | ||
| 233 | <div class="triangle"></div> | ||
| 234 | </div> | ||
| 235 | <ywrCommonTable | ||
| 236 | v-if="ruleForm.ywrList" | ||
| 237 | :disabled="viewEdit" | ||
| 238 | :tableData="ruleForm.ywrList" | ||
| 239 | :key="key" | ||
| 240 | @upDateQlrxxList="upDateYwrxxList" /> | ||
| 241 | </div> | ||
| 242 | |||
| 243 | <div class="slxx_title title-block"> | ||
| 244 | 登记原因 | ||
| 245 | <div class="triangle"></div> | ||
| 246 | </div> | ||
| 247 | <el-row :gutter="10"> | ||
| 248 | <el-col> | ||
| 249 | <el-form-item label="登记原因:" prop="jsydsyq.djyy"> | ||
| 250 | <el-input | ||
| 251 | class="textArea" | ||
| 252 | type="textarea" | ||
| 253 | maxlength="500" | ||
| 254 | show-word-limit | ||
| 255 | :disabled="!viewEdit" | ||
| 256 | v-model="ruleForm.jsydsyq.djyy"> | ||
| 257 | </el-input> | ||
| 258 | </el-form-item> | ||
| 259 | </el-col> | ||
| 260 | </el-row> | ||
| 261 | </div> | ||
| 262 | <el-row class="btn" v-if="isSave"> | ||
| 263 | <el-form-item> | ||
| 264 | <el-button type="primary" @click="onSubmit">保存</el-button> | ||
| 265 | </el-form-item> | ||
| 266 | </el-row> | ||
| 267 | </el-form> | ||
| 268 | </div> | ||
| 269 | </template> | ||
| 270 | <script> | ||
| 271 | import { mapGetters } from "vuex"; | ||
| 272 | import ywmix from "@/views/ywbl/mixin/index"; | ||
| 273 | import { Init, saveData } from "@/api/workflow/jsydsyqFlow.js"; | ||
| 274 | import tdytTable from "@/views/workflow/components/tdytTable"; | ||
| 275 | import qlrCommonTable from "@/views/workflow/components/qlrCommonTable"; | ||
| 276 | import ywrCommonTable from "@/views/workflow/components/ywrCommonTable"; | ||
| 277 | export default { | ||
| 278 | mixins: [ywmix], | ||
| 279 | mounted () { | ||
| 280 | let that = this | ||
| 281 | this.viewEdit = this.$parent.currentSelectTab.ableOperation; | ||
| 282 | this.propsParam = this.$attrs; | ||
| 283 | var formdata = new FormData(); | ||
| 284 | this.loading = true | ||
| 285 | formdata.append("bsmSldy", this.propsParam.bsmSldy); | ||
| 286 | formdata.append("djlx", this.propsParam.djlx); | ||
| 287 | formdata.append("isEdit", this.viewEdit); | ||
| 288 | Init(formdata).then((res) => { | ||
| 289 | setTimeout(() => { | ||
| 290 | that.loading = false | ||
| 291 | }, 200) | ||
| 292 | if (res.code === 200) { | ||
| 293 | that.ruleForm = res.result; | ||
| 294 | that.ruleForm.qlrList.forEach((item) => { | ||
| 295 | item.id = item.bsmSqr | ||
| 296 | if (item.sfczr == '1') { | ||
| 297 | that.czr = item.bsmSqr | ||
| 298 | } | ||
| 299 | }) | ||
| 300 | that.czrOptions = that.ruleForm.qlrList; | ||
| 301 | that.isSave = that.viewEdit | ||
| 302 | } else { | ||
| 303 | that.isSave = false | ||
| 304 | that.$confirm(res.message, '提示', { | ||
| 305 | cancelButtonText: '取消', | ||
| 306 | showConfirmButton: false, | ||
| 307 | type: 'warning' | ||
| 308 | }) | ||
| 309 | } | ||
| 310 | }).catch(() => { | ||
| 311 | this.loading = false | ||
| 312 | this.isSave = false | ||
| 313 | }) | ||
| 314 | }, | ||
| 315 | components: { qlrCommonTable, tdytTable, ywrCommonTable }, | ||
| 316 | computed: { | ||
| 317 | ...mapGetters(["dictData", "flag"]), | ||
| 318 | // 根据流程判断表单是否为只读 | ||
| 319 | editDisabled () { | ||
| 320 | if (!this.viewEdit) { | ||
| 321 | //只读状态 | ||
| 322 | return true; | ||
| 323 | } | ||
| 324 | return false; | ||
| 325 | }, | ||
| 326 | }, | ||
| 327 | data () { | ||
| 328 | return { | ||
| 329 | isSave: true, | ||
| 330 | // 键名转换,方法默认是label和children进行树状渲染 | ||
| 331 | normalizer (node) { | ||
| 332 | //方法 | ||
| 333 | if (node.children == null || node.children == "null") { | ||
| 334 | delete node.children; | ||
| 335 | } | ||
| 336 | return { | ||
| 337 | id: node.dcode, | ||
| 338 | label: node.dname, | ||
| 339 | }; | ||
| 340 | }, | ||
| 341 | loading: false, | ||
| 342 | mjdw: "1", | ||
| 343 | //表单是否可操作 | ||
| 344 | viewEdit: true, | ||
| 345 | czr: "", | ||
| 346 | key: 0, | ||
| 347 | disabled: true, | ||
| 348 | czrOptions: [], | ||
| 349 | ruleForm: {}, | ||
| 350 | //传递参数 | ||
| 351 | propsParam: {}, | ||
| 352 | rules: { | ||
| 353 | 'jsydsyq.djyy': [ | ||
| 354 | { required: true, message: '请输入登记原因', trigger: 'blur' } | ||
| 355 | ] | ||
| 356 | } | ||
| 357 | } | ||
| 358 | }, | ||
| 359 | methods: { | ||
| 360 | /** | ||
| 361 | * @description: 更新土地用途信息 | ||
| 362 | * @param {*} val | ||
| 363 | * @author: renchao | ||
| 364 | */ | ||
| 365 | upDateTdytxxList (val) { | ||
| 366 | this.ruleForm.tdytqxList && (this.ruleForm.tdytqxList = _.cloneDeep(val)); | ||
| 367 | this.key++; | ||
| 368 | }, | ||
| 369 | /** | ||
| 370 | * @description: 更新权利人信息 | ||
| 371 | * @param {*} val | ||
| 372 | * @author: renchao | ||
| 373 | */ | ||
| 374 | upDateQlrxxList (val) { | ||
| 375 | this.ruleForm.qlrList && (this.ruleForm.qlrList = _.cloneDeep(val)); | ||
| 376 | this.czrOptions = this.ruleForm.qlrList; | ||
| 377 | this.num = 0 | ||
| 378 | this.ruleForm.qlrList.forEach(item => { | ||
| 379 | if (item.id == this.czr) { | ||
| 380 | this.num++ | ||
| 381 | } | ||
| 382 | }) | ||
| 383 | if (this.num == 0) { | ||
| 384 | this.czr = '' | ||
| 385 | } | ||
| 386 | }, | ||
| 387 | /** | ||
| 388 | * @description: 是否持证人变化 | ||
| 389 | * @param {*} val | ||
| 390 | * @author: renchao | ||
| 391 | */ | ||
| 392 | updaterow () { | ||
| 393 | this.czr = ""; | ||
| 394 | }, | ||
| 395 | /** | ||
| 396 | * @description: 更新义务人信息 | ||
| 397 | * @param {*} val | ||
| 398 | * @author: renchao | ||
| 399 | */ | ||
| 400 | upDateYwrxxList (val) { | ||
| 401 | this.ruleForm.ywrList && (this.ruleForm.ywrList = _.cloneDeep(val)); | ||
| 402 | this.key++; | ||
| 403 | }, | ||
| 404 | /** | ||
| 405 | * @description: onSubmit | ||
| 406 | * @author: renchao | ||
| 407 | */ | ||
| 408 | onSubmit () { | ||
| 409 | let that = this; | ||
| 410 | let arr = this.ruleForm.tdytqxList.filter((item) => !item.yt); | ||
| 411 | if (arr.length > 0) { | ||
| 412 | this.$message({ | ||
| 413 | showClose: true, | ||
| 414 | message: "土地用途不能为空", | ||
| 415 | type: "error", | ||
| 416 | }); | ||
| 417 | return false; | ||
| 418 | } | ||
| 419 | if (this.ruleForm.qlrList.length == 0) { | ||
| 420 | this.$message({ | ||
| 421 | showClose: true, | ||
| 422 | message: "请确认权利人信息", | ||
| 423 | type: "error", | ||
| 424 | }); | ||
| 425 | return false; | ||
| 426 | } | ||
| 427 | if (this.ruleForm.sldy.gyfs == "0") { | ||
| 428 | if (this.ruleForm.qlrList.length > 1) { | ||
| 429 | this.$message({ | ||
| 430 | showClose: true, | ||
| 431 | message: "共有方式:单独所有,权利人只能是一个人", | ||
| 432 | type: "error", | ||
| 433 | }); | ||
| 434 | return false; | ||
| 435 | } | ||
| 436 | this.ruleForm.qlrList[0].sfczr = "1"; | ||
| 437 | } else { | ||
| 438 | if (this.ruleForm.qlrList.length <= 1) { | ||
| 439 | this.$message({ | ||
| 440 | showClose: true, | ||
| 441 | message: | ||
| 442 | "共有方式:共同所有,按份所有,其他所有,权利人必须是两个以上", | ||
| 443 | type: "error", | ||
| 444 | }); | ||
| 445 | return false; | ||
| 446 | } | ||
| 447 | //是否分别持证 | ||
| 448 | if (this.ruleForm.sldy.sqfbcz == "1") { | ||
| 449 | //是 | ||
| 450 | this.ruleForm.qlrList.forEach((item, index) => { | ||
| 451 | item.sfczr = "1"; | ||
| 452 | }); | ||
| 453 | } else { | ||
| 454 | if (that.czr === '') { | ||
| 455 | that.$message({ | ||
| 456 | showClose: true, | ||
| 457 | message: "请选择持证人", | ||
| 458 | type: "error", | ||
| 459 | }); | ||
| 460 | return false; | ||
| 461 | } | ||
| 462 | this.ruleForm.qlrList.forEach((item, index) => { | ||
| 463 | if (item.id == that.czr) { | ||
| 464 | item.sfczr = "1"; | ||
| 465 | } else { | ||
| 466 | item.sfczr = "0"; | ||
| 467 | } | ||
| 468 | }); | ||
| 469 | } | ||
| 470 | } | ||
| 471 | /** | ||
| 472 | * @description: saveData | ||
| 473 | * @author: renchao | ||
| 474 | */ | ||
| 475 | this.$refs['ruleForm'].validate((valid) => { | ||
| 476 | if (valid) { | ||
| 477 | that.$store.dispatch("user/refreshPage", false); | ||
| 478 | saveData(that.ruleForm).then((res) => { | ||
| 479 | if (res.code === 200) { | ||
| 480 | that.$message({ | ||
| 481 | showClose: true, | ||
| 482 | message: "保存成功!", | ||
| 483 | type: "success" | ||
| 484 | }) | ||
| 485 | that.$store.dispatch("user/refreshPage", true); | ||
| 486 | } else { | ||
| 487 | that.$message({ | ||
| 488 | showClose: true, | ||
| 489 | message: res.message, | ||
| 490 | type: "error" | ||
| 491 | }) | ||
| 492 | } | ||
| 493 | }) | ||
| 494 | } else { | ||
| 495 | this.$message({ | ||
| 496 | showClose: true, | ||
| 497 | message: "请输入登记原因", | ||
| 498 | type: "error" | ||
| 499 | }) | ||
| 500 | return false | ||
| 501 | } | ||
| 502 | }) | ||
| 503 | } | ||
| 504 | } | ||
| 505 | } | ||
| 506 | </script> | ||
| 507 | <style scoped lang="scss"> | ||
| 508 | @import "~@/styles/public.scss"; | ||
| 509 | @import "~@/styles/slxx/slxx.scss"; | ||
| 510 | </style> |
| 1 | 0 | ||
| 2 | <!-- | ||
| 3 | * @Description: | ||
| 4 | * @Autor: renchao | ||
| 5 | * @LastEditTime: 2024-01-31 10:14:22 | ||
| 6 | --> | ||
| 7 | <template> | ||
| 8 | <!-- 受理信息 --> | ||
| 9 | <div class="slxx"> | ||
| 10 | <el-form | ||
| 11 | :model="ruleForm" | ||
| 12 | :rules="rules" | ||
| 13 | v-Loading="loading" | ||
| 14 | ref="ruleForm" | ||
| 15 | :label-position="flag ? 'top' : ''" | ||
| 16 | :inline="flag" | ||
| 17 | label-width="120px"> | ||
| 18 | <div class="slxx_con" :class="flag ? 'formMarginBot0' : ''"> | ||
| 19 | <div class="slxx_title title-block"> | ||
| 20 | 申请业务信息 | ||
| 21 | <div class="triangle"></div> | ||
| 22 | </div> | ||
| 23 | <el-row :gutter="10"> | ||
| 24 | <el-col :span="8"> | ||
| 25 | <el-form-item label="业务号:"> | ||
| 26 | <el-input disabled v-model="ruleForm.flow.ywh"></el-input> | ||
| 27 | </el-form-item> | ||
| 28 | </el-col> | ||
| 29 | <el-col :span="8"> | ||
| 30 | <el-form-item label="受理人员:"> | ||
| 31 | <el-input disabled v-model="ruleForm.slsq.slry"></el-input> | ||
| 32 | </el-form-item> | ||
| 33 | </el-col> | ||
| 34 | <el-col :span="8"> | ||
| 35 | <el-form-item label="受理时间:"> | ||
| 36 | <el-input disabled v-model="ruleForm.slsq.slsj"></el-input> | ||
| 37 | </el-form-item> | ||
| 38 | </el-col> | ||
| 39 | </el-row> | ||
| 40 | <el-row :gutter="10"> | ||
| 41 | <el-col :span="8"> | ||
| 42 | <el-form-item label="权利类型:"> | ||
| 43 | <el-input disabled v-model="ruleForm.sldy.qllxmc"></el-input> | ||
| 44 | </el-form-item> | ||
| 45 | </el-col> | ||
| 46 | <el-col :span="8"> | ||
| 47 | <el-form-item label="登记类型:"> | ||
| 48 | <el-input disabled v-model="ruleForm.sldy.djlxmc"></el-input> | ||
| 49 | </el-form-item> | ||
| 50 | </el-col> | ||
| 51 | <el-col :span="8"> | ||
| 52 | <el-form-item label="登记情形:"> | ||
| 53 | <el-input disabled v-model="ruleForm.slsq.djqxmc"></el-input> | ||
| 54 | </el-form-item> | ||
| 55 | </el-col> | ||
| 56 | </el-row> | ||
| 57 | <div class="slxx_title title-block"> | ||
| 58 | <el-row> | ||
| 59 | <el-col :span="16"> | ||
| 60 | 不动产单元情况 | ||
| 61 | </el-col> | ||
| 62 | <el-col :span="4"> | ||
| 63 | <el-button @click="compare">变化情况对比+</el-button> | ||
| 64 | </el-col> | ||
| 65 | <el-col :span="4" v-if="ruleForm.sldy.djlx=='500'"> | ||
| 66 | <el-form-item label="是否创建证书:" style="height:24px"> | ||
| 67 | <el-radio-group v-model="ruleForm.sldy.sfxysczs"> | ||
| 68 | <el-radio label="1">是</el-radio> | ||
| 69 | <el-radio label="0">否</el-radio> | ||
| 70 | </el-radio-group> | ||
| 71 | </el-form-item> | ||
| 72 | </el-col> | ||
| 73 | </el-row> | ||
| 74 | <div class="triangle"></div> | ||
| 75 | |||
| 76 | </div> | ||
| 77 | <el-row :gutter="10"> | ||
| 78 | <el-col :span="8"> | ||
| 79 | <el-form-item label="原不动产权证号:"> | ||
| 80 | <el-input disabled v-model="ruleForm.sldy.ybdcqzsh"></el-input> | ||
| 81 | </el-form-item> | ||
| 82 | </el-col> | ||
| 83 | <el-col :span="8"> | ||
| 84 | <el-form-item label="不动产单元号:"> | ||
| 85 | <el-input disabled v-model="ruleForm.qlxx.bdcdyh"></el-input> | ||
| 86 | </el-form-item> | ||
| 87 | </el-col> | ||
| 88 | <el-col :span="8"> | ||
| 89 | <el-form-item label="权利性质:"> | ||
| 90 | <treeselect | ||
| 91 | :disabled="!viewEdit" | ||
| 92 | v-model="ruleForm.zdjbxx.qlxz" | ||
| 93 | noOptionsText="暂无数据" | ||
| 94 | placeholder="" | ||
| 95 | :normalizer="normalizer" | ||
| 96 | :default-expand-level="1" | ||
| 97 | :show-count="true" | ||
| 98 | :options="dictData['A9']" /> | ||
| 99 | </el-form-item> | ||
| 100 | </el-col> | ||
| 101 | </el-row> | ||
| 102 | <el-row :gutter="10"> | ||
| 103 | <el-col :span="8"> | ||
| 104 | <el-form-item label="权利设定方式:"> | ||
| 105 | <el-select v-model="ruleForm.zdjbxx.qlsdfs" :disabled="!viewEdit"> | ||
| 106 | <el-option | ||
| 107 | v-for="item in dictData['A10']" | ||
| 108 | :key="item.dcode" | ||
| 109 | :label="item.dname" | ||
| 110 | :value="item.dcode"> | ||
| 111 | </el-option> | ||
| 112 | </el-select> | ||
| 113 | </el-form-item> | ||
| 114 | </el-col> | ||
| 115 | |||
| 116 | <el-col :span="8"> | ||
| 117 | <el-form-item label="宗地面积:"> | ||
| 118 | <el-input :disabled="!viewEdit" v-model="ruleForm.zdjbxx.zdmj"></el-input> | ||
| 119 | </el-form-item> | ||
| 120 | </el-col> | ||
| 121 | <el-col :span="8"> | ||
| 122 | <el-form-item label="取得价格:"> | ||
| 123 | <div style="display: flex"> | ||
| 124 | <el-input | ||
| 125 | maxlength="11" | ||
| 126 | v-model="ruleForm.jsydsyq.qdjg" | ||
| 127 | style="width: 500%" | ||
| 128 | oninput="value = (value.match(/^\d*(\.?\d{0,2})/g)[0]) || null" | ||
| 129 | :disabled="!viewEdit"></el-input> | ||
| 130 | <el-select v-model="ruleForm.jsydsyq.jedw" disabled> | ||
| 131 | <el-option | ||
| 132 | v-for="item in dictData['A57']" | ||
| 133 | :key="item.dcode" | ||
| 134 | :label="item.dname" | ||
| 135 | :value="item.dcode"> | ||
| 136 | </el-option> | ||
| 137 | </el-select> | ||
| 138 | </div> | ||
| 139 | </el-form-item> | ||
| 140 | </el-col> | ||
| 141 | </el-row> | ||
| 142 | <el-row :gutter="10"> | ||
| 143 | <el-col :span="8"> | ||
| 144 | <el-form-item label="土地等级:"> | ||
| 145 | <el-select placeholder="" v-model="ruleForm.zdjbxx.dj" :disabled="!viewEdit"> | ||
| 146 | <el-option | ||
| 147 | v-for="item in dictData['A50']" | ||
| 148 | :key="item.dcode" | ||
| 149 | :label="item.dname" | ||
| 150 | :value="item.dcode"> | ||
| 151 | </el-option> | ||
| 152 | </el-select> | ||
| 153 | </el-form-item> | ||
| 154 | </el-col> | ||
| 155 | |||
| 156 | <el-col :span="8"> | ||
| 157 | <el-form-item label="图幅号:"> | ||
| 158 | <el-input | ||
| 159 | :disabled="!viewEdit" | ||
| 160 | v-model="ruleForm.zdjbxx.tfh"></el-input> | ||
| 161 | </el-form-item> | ||
| 162 | </el-col> | ||
| 163 | <el-col :span="8"> | ||
| 164 | <el-form-item label="地籍号:"> | ||
| 165 | <el-input | ||
| 166 | v-model="ruleForm.zdjbxx.djh" | ||
| 167 | :disabled="!viewEdit"></el-input> | ||
| 168 | </el-form-item> | ||
| 169 | </el-col> | ||
| 170 | |||
| 171 | </el-row> | ||
| 172 | <el-row :gutter="10"> | ||
| 173 | <el-col :span="8"> | ||
| 174 | <el-form-item label="地块代码:"> | ||
| 175 | <el-input | ||
| 176 | v-model="ruleForm.zdjbxx.dkdm" | ||
| 177 | :disabled="!viewEdit"></el-input> | ||
| 178 | </el-form-item> | ||
| 179 | </el-col> | ||
| 180 | <el-col :span="16"> | ||
| 181 | <el-form-item label="坐落:"> | ||
| 182 | <el-input :disabled="!viewEdit" v-model="ruleForm.sldy.zl"></el-input> | ||
| 183 | </el-form-item> | ||
| 184 | </el-col> | ||
| 185 | </el-row> | ||
| 186 | <el-row :gutter="10"> | ||
| 187 | <el-col> | ||
| 188 | <el-form-item label="附记:" prop="fj"> | ||
| 189 | <el-input | ||
| 190 | type="textarea" | ||
| 191 | maxlength="500" | ||
| 192 | show-word-limit | ||
| 193 | v-model="ruleForm.jsydsyq.fj" | ||
| 194 | :disabled="!viewEdit"></el-input> | ||
| 195 | </el-form-item> | ||
| 196 | </el-col> | ||
| 197 | </el-row> | ||
| 198 | <div class="slxx_title title-block"> | ||
| 199 | 土地用途 | ||
| 200 | <div class="triangle"></div> | ||
| 201 | </div> | ||
| 202 | <tdytTable | ||
| 203 | :tableData="ruleForm.tdytqxList" | ||
| 204 | :ableOperation="viewEdit" | ||
| 205 | @upDateTdytxxList="upDateTdytxxList" /> | ||
| 206 | <div class="slxx_title title-block"> | ||
| 207 | 权利人信息 | ||
| 208 | <div class="triangle"></div> | ||
| 209 | </div> | ||
| 210 | <el-row :gutter="10"> | ||
| 211 | <el-col :span="12"> | ||
| 212 | <el-form-item label="共有方式:"> | ||
| 213 | <el-radio-group | ||
| 214 | :disabled="!viewEdit" | ||
| 215 | v-model="ruleForm.sldy.gyfs"> | ||
| 216 | <el-radio label="0">单独所有</el-radio> | ||
| 217 | <el-radio label="1">共同共有</el-radio> | ||
| 218 | <el-radio label="2">按份所有</el-radio> | ||
| 219 | <el-radio label="3">其它共有</el-radio> | ||
| 220 | </el-radio-group> | ||
| 221 | </el-form-item> | ||
| 222 | </el-col> | ||
| 223 | <el-col :span="6" v-show="ruleForm.sldy.gyfs != '0'"> | ||
| 224 | <el-form-item label="是否分别持证:"> | ||
| 225 | <el-radio-group | ||
| 226 | v-model="ruleForm.sldy.sqfbcz" | ||
| 227 | :disabled="!viewEdit" | ||
| 228 | @input="updaterow()"> | ||
| 229 | <el-radio :label="1">是</el-radio> | ||
| 230 | <el-radio :label="0">否</el-radio> | ||
| 231 | </el-radio-group> | ||
| 232 | </el-form-item> | ||
| 233 | </el-col> | ||
| 234 | <el-col | ||
| 235 | :span="6" | ||
| 236 | v-show="ruleForm.sldy.sqfbcz == '0' && ruleForm.sldy.gyfs != '0'"> | ||
| 237 | <el-form-item label="持证人:"> | ||
| 238 | <el-select | ||
| 239 | v-model="czr" | ||
| 240 | placeholder="持证人" | ||
| 241 | :disabled="!viewEdit"> | ||
| 242 | <el-option | ||
| 243 | v-for="item in czrOptions" | ||
| 244 | :key="item.id" | ||
| 245 | :label="item.sqrmc" | ||
| 246 | :value="item.id"> | ||
| 247 | </el-option> | ||
| 248 | </el-select> | ||
| 249 | </el-form-item> | ||
| 250 | </el-col> | ||
| 251 | </el-row> | ||
| 252 | <qlrCommonTable | ||
| 253 | :tableData="ruleForm.qlrList" | ||
| 254 | :disabled="viewEdit" | ||
| 255 | @upDateQlrxxList="upDateQlrxxList" | ||
| 256 | :gyfs="ruleForm.sldy.gyfs" /> | ||
| 257 | |||
| 258 | <div v-if="ruleForm.ywrList && ruleForm.ywrList.length > 0 && ruleForm.qlxx.djlx==200"> | ||
| 259 | <div class="slxx_title title-block"> | ||
| 260 | 义务人信息 | ||
| 261 | <div class="triangle"></div> | ||
| 262 | </div> | ||
| 263 | <ywrCommonTable | ||
| 264 | v-if="ruleForm.ywrList" | ||
| 265 | :disabled="viewEdit" | ||
| 266 | :tableData="ruleForm.ywrList" | ||
| 267 | :key="key" | ||
| 268 | @upDateQlrxxList="upDateYwrxxList" /> | ||
| 269 | </div> | ||
| 270 | |||
| 271 | <div class="slxx_title title-block"> | ||
| 272 | 登记原因 | ||
| 273 | <div class="triangle"></div> | ||
| 274 | </div> | ||
| 275 | <el-row :gutter="10"> | ||
| 276 | <el-col> | ||
| 277 | <el-form-item label="登记原因:" prop="jsydsyq.djyy"> | ||
| 278 | <el-input | ||
| 279 | class="textArea" | ||
| 280 | type="textarea" | ||
| 281 | maxlength="500" | ||
| 282 | show-word-limit | ||
| 283 | :disabled="!viewEdit" | ||
| 284 | v-model="ruleForm.jsydsyq.djyy"> | ||
| 285 | </el-input> | ||
| 286 | </el-form-item> | ||
| 287 | </el-col> | ||
| 288 | </el-row> | ||
| 289 | </div> | ||
| 290 | <el-row class="btn" v-if="isSave"> | ||
| 291 | <el-form-item> | ||
| 292 | <el-button type="primary" @click="onSubmit">保存</el-button> | ||
| 293 | </el-form-item> | ||
| 294 | </el-row> | ||
| 295 | </el-form> | ||
| 296 | </div> | ||
| 297 | </template> | ||
| 298 | <script> | ||
| 299 | import { mapGetters } from "vuex"; | ||
| 300 | import ywmix from "@/views/ywbl/mixin/index"; | ||
| 301 | import qlrCommonTable from "@/views/workflow/components/qlrCommonTable"; | ||
| 302 | import ywrCommonTable from "@/views/workflow/components/ywrCommonTable"; | ||
| 303 | import tdytTable from "@/views/workflow/components/tdytTable"; | ||
| 304 | import { Init, saveData } from "@/api/workflow/jsydsyqFlow.js"; | ||
| 305 | export default { | ||
| 306 | mixins: [ywmix], | ||
| 307 | mounted () { | ||
| 308 | let that = this; | ||
| 309 | this.loading = true | ||
| 310 | this.viewEdit = this.$parent.currentSelectTab.ableOperation; | ||
| 311 | this.propsParam = this.$attrs; | ||
| 312 | var formdata = new FormData(); | ||
| 313 | formdata.append("bsmSldy", this.propsParam.bsmSldy); | ||
| 314 | formdata.append("djlx", this.propsParam.djlx); | ||
| 315 | formdata.append("isEdit", this.viewEdit); | ||
| 316 | Init(formdata).then((res) => { | ||
| 317 | setTimeout(() => { | ||
| 318 | this.loading = false | ||
| 319 | }, 200) | ||
| 320 | if (res.code === 200 && res.result) { | ||
| 321 | that.ruleForm = res.result; | ||
| 322 | that.ruleForm.qlrList.forEach((item) => { | ||
| 323 | item.id = item.bsmSqr | ||
| 324 | if (item.sfczr == '1') { | ||
| 325 | that.czr = item.bsmSqr | ||
| 326 | } | ||
| 327 | }) | ||
| 328 | that.czrOptions = that.ruleForm.qlrList; | ||
| 329 | that.isSave = that.viewEdit | ||
| 330 | } else { | ||
| 331 | that.isSave = false | ||
| 332 | that.$confirm(res.message, '提示', { | ||
| 333 | cancelButtonText: '取消', | ||
| 334 | showConfirmButton: false, | ||
| 335 | type: 'warning' | ||
| 336 | }) | ||
| 337 | } | ||
| 338 | }).catch(() => { | ||
| 339 | this.loading = false | ||
| 340 | this.isSave = false | ||
| 341 | }) | ||
| 342 | }, | ||
| 343 | components: { qlrCommonTable, tdytTable, ywrCommonTable }, | ||
| 344 | computed: { | ||
| 345 | ...mapGetters(["dictData", "flag"]), | ||
| 346 | }, | ||
| 347 | data () { | ||
| 348 | return { | ||
| 349 | key: 0, | ||
| 350 | isSave: true, | ||
| 351 | loading: false, | ||
| 352 | // 键名转换,方法默认是label和children进行树状渲染 | ||
| 353 | normalizer (node) { | ||
| 354 | //方法 | ||
| 355 | if (node.children == null || node.children == "null") { | ||
| 356 | delete node.children; | ||
| 357 | } | ||
| 358 | return { | ||
| 359 | id: node.dcode, | ||
| 360 | label: node.dname, | ||
| 361 | }; | ||
| 362 | }, | ||
| 363 | //表单是否可操作 | ||
| 364 | viewEdit: false, | ||
| 365 | disabled: true, | ||
| 366 | czrOptions: [], | ||
| 367 | czr: "", | ||
| 368 | ruleForm: { | ||
| 369 | slywxx: {}, | ||
| 370 | qlxx: {}, | ||
| 371 | zdjbxx: {}, | ||
| 372 | jsydsyq: {}, | ||
| 373 | }, | ||
| 374 | //传递参数 | ||
| 375 | propsParam: {}, | ||
| 376 | rules: { | ||
| 377 | 'jsydsyq.djyy': [ | ||
| 378 | { required: true, message: '请输入登记原因', trigger: 'blur' } | ||
| 379 | ] | ||
| 380 | } | ||
| 381 | }; | ||
| 382 | }, | ||
| 383 | methods: { | ||
| 384 | /** | ||
| 385 | * @description: 更新土地用途信息 | ||
| 386 | * @param {*} val | ||
| 387 | * @author: renchao | ||
| 388 | */ | ||
| 389 | upDateTdytxxList (val) { | ||
| 390 | this.ruleForm.tdytqxList && (this.ruleForm.tdytqxList = _.cloneDeep(val)); | ||
| 391 | this.key++; | ||
| 392 | }, | ||
| 393 | /** | ||
| 394 | * @description: 更新权利人信息 | ||
| 395 | * @param {*} val | ||
| 396 | * @author: renchao | ||
| 397 | */ | ||
| 398 | upDateQlrxxList (val) { | ||
| 399 | if (!_.isEqual(val, this.ruleForm.qlrList)) { | ||
| 400 | this.ruleForm.qlrList = _.cloneDeep(val); | ||
| 401 | this.czrOptions = this.ruleForm.qlrList; | ||
| 402 | } | ||
| 403 | this.num = 0 | ||
| 404 | this.ruleForm.qlrList.forEach(item => { | ||
| 405 | if (item.id == this.czr) { | ||
| 406 | this.num++ | ||
| 407 | } | ||
| 408 | }) | ||
| 409 | if (this.num == 0) { | ||
| 410 | this.czr = '' | ||
| 411 | } | ||
| 412 | }, | ||
| 413 | /** | ||
| 414 | * @description: 是否持证人变化 | ||
| 415 | * @param {*} val | ||
| 416 | * @author: renchao | ||
| 417 | */ | ||
| 418 | updaterow () { | ||
| 419 | this.czr = ""; | ||
| 420 | }, | ||
| 421 | /** | ||
| 422 | * @description: onSubmit | ||
| 423 | * @author: renchao | ||
| 424 | */ | ||
| 425 | onSubmit () { | ||
| 426 | let that = this; | ||
| 427 | let arr = this.ruleForm.tdytqxList.filter((item) => !item.yt); | ||
| 428 | if (arr.length > 0) { | ||
| 429 | this.$message({ | ||
| 430 | showClose: true, | ||
| 431 | message: "土地用途不能为空", | ||
| 432 | type: "error", | ||
| 433 | }); | ||
| 434 | return false; | ||
| 435 | } | ||
| 436 | if (this.ruleForm.qlrList.length == 0) { | ||
| 437 | this.$message({ | ||
| 438 | showClose: true, | ||
| 439 | message: "请确认权利人信息", | ||
| 440 | type: "error", | ||
| 441 | }); | ||
| 442 | return false; | ||
| 443 | } | ||
| 444 | |||
| 445 | if (this.ruleForm.sldy.gyfs == "0") { | ||
| 446 | if (this.ruleForm.qlrList.length > 1) { | ||
| 447 | this.$message({ | ||
| 448 | showClose: true, | ||
| 449 | message: "共有方式:单独所有,权利人只能是一个人", | ||
| 450 | type: "error", | ||
| 451 | }); | ||
| 452 | return false; | ||
| 453 | } | ||
| 454 | this.ruleForm.qlrList[0].sfczr = "1"; | ||
| 455 | } else { | ||
| 456 | if (this.ruleForm.qlrList.length <= 1) { | ||
| 457 | this.$message({ | ||
| 458 | showClose: true, | ||
| 459 | message: | ||
| 460 | "共有方式:共同所有,按份所有,其他所有,权利人必须是两个以上", | ||
| 461 | type: "error", | ||
| 462 | }); | ||
| 463 | return false; | ||
| 464 | } | ||
| 465 | //是否分别持证 | ||
| 466 | if (this.ruleForm.sldy.sqfbcz == "1") { | ||
| 467 | //是 | ||
| 468 | this.ruleForm.qlrList.forEach((item, index) => { | ||
| 469 | item.sfczr = "1"; | ||
| 470 | }); | ||
| 471 | } else { | ||
| 472 | if (that.czr === '') { | ||
| 473 | that.$message({ | ||
| 474 | showClose: true, | ||
| 475 | message: "请选择持证人", | ||
| 476 | type: "error", | ||
| 477 | }); | ||
| 478 | return false; | ||
| 479 | } | ||
| 480 | this.ruleForm.qlrList.forEach((item, index) => { | ||
| 481 | if (item.id == that.czr) { | ||
| 482 | item.sfczr = "1"; | ||
| 483 | } else { | ||
| 484 | item.sfczr = "0"; | ||
| 485 | } | ||
| 486 | }) | ||
| 487 | } | ||
| 488 | } | ||
| 489 | this.$refs['ruleForm'].validate((valid) => { | ||
| 490 | if (valid) { | ||
| 491 | that.$store.dispatch("user/refreshPage", false) | ||
| 492 | saveData(this.ruleForm).then((res) => { | ||
| 493 | if (res.code === 200) { | ||
| 494 | that.$message({ | ||
| 495 | showClose: true, | ||
| 496 | message: "保存成功!", | ||
| 497 | type: "success" | ||
| 498 | }) | ||
| 499 | that.$store.dispatch("user/refreshPage", true) | ||
| 500 | } else { | ||
| 501 | that.$message({ | ||
| 502 | showClose: true, | ||
| 503 | message: res.message, | ||
| 504 | type: "error" | ||
| 505 | }) | ||
| 506 | } | ||
| 507 | }) | ||
| 508 | } else { | ||
| 509 | this.$message({ | ||
| 510 | showClose: true, | ||
| 511 | message: "请输入登记原因", | ||
| 512 | type: "error" | ||
| 513 | }) | ||
| 514 | return false | ||
| 515 | } | ||
| 516 | }) | ||
| 517 | }, | ||
| 518 | /** | ||
| 519 | * @description: compare | ||
| 520 | * @author: renchao | ||
| 521 | */ | ||
| 522 | compare () { | ||
| 523 | this.$popupDialog( | ||
| 524 | this.ruleForm.qlxx.qllxmc, | ||
| 525 | "registerBook/comparison", | ||
| 526 | { | ||
| 527 | bsmQlxx: this.ruleForm.qlxx.bsmQlxx, | ||
| 528 | dqqllx: "JSYDSYQ", | ||
| 529 | }, | ||
| 530 | "80%", | ||
| 531 | true | ||
| 532 | ); | ||
| 533 | }, | ||
| 534 | }, | ||
| 535 | }; | ||
| 536 | </script> | ||
| 537 | <style scoped lang="scss"> | ||
| 538 | @import "~@/styles/public.scss"; | ||
| 539 | @import "~@/styles/slxx/slxx.scss"; | ||
| 540 | </style> |
| 1 | <!-- | ||
| 2 | * @Description: 房屋多幢受理信息 | ||
| 3 | * @Autor: ssq | ||
| 4 | * @LastEditTime: 2024-01-31 10:15:25 | ||
| 5 | --> | ||
| 6 | <template> | ||
| 7 | <div class="slxx"> | ||
| 8 | <el-form | ||
| 9 | :model="ruleForm" | ||
| 10 | :rules="rules" | ||
| 11 | v-Loading="loading" | ||
| 12 | ref="ruleForm" | ||
| 13 | :label-position="flag ? 'top' : ''" | ||
| 14 | :inline="flag" | ||
| 15 | label-width="190px"> | ||
| 16 | <div class="slxx_con" :class="flag ? 'formMarginBot0' : ''"> | ||
| 17 | <div class="slxx_title title-block"> | ||
| 18 | 申请业务信息 | ||
| 19 | <div class="triangle"></div> | ||
| 20 | </div> | ||
| 21 | <el-row :gutter="10" v-if="ruleForm.slsq"> | ||
| 22 | <el-col :span="8"> | ||
| 23 | <el-form-item label="业务号:"> | ||
| 24 | <el-input disabled v-model="ruleForm.flow.ywh"></el-input> | ||
| 25 | </el-form-item> | ||
| 26 | </el-col> | ||
| 27 | <el-col :span="8"> | ||
| 28 | <el-form-item label="受理人员:"> | ||
| 29 | <el-input disabled v-model="ruleForm.slsq.slry"></el-input> | ||
| 30 | </el-form-item> | ||
| 31 | </el-col> | ||
| 32 | <el-col :span="8"> | ||
| 33 | <el-form-item label="受理时间:"> | ||
| 34 | <el-input disabled v-model="ruleForm.slsq.slsj"></el-input> | ||
| 35 | </el-form-item> | ||
| 36 | </el-col> | ||
| 37 | </el-row> | ||
| 38 | <el-row :gutter="10" v-if="ruleForm.slsq"> | ||
| 39 | <el-col :span="8"> | ||
| 40 | <el-form-item label="权利类型:"> | ||
| 41 | <el-input disabled v-model="ruleForm.sldy.qllxmc"></el-input> | ||
| 42 | </el-form-item> | ||
| 43 | </el-col> | ||
| 44 | <el-col :span="8"> | ||
| 45 | <el-form-item label="登记类型:"> | ||
| 46 | <el-input disabled v-model="ruleForm.sldy.djlxmc"></el-input> | ||
| 47 | </el-form-item> | ||
| 48 | </el-col> | ||
| 49 | <el-col :span="8"> | ||
| 50 | <el-form-item label="登记情形:"> | ||
| 51 | <el-input disabled v-model="ruleForm.slsq.djqxmc"></el-input> | ||
| 52 | </el-form-item> | ||
| 53 | </el-col> | ||
| 54 | </el-row> | ||
| 55 | <div class="slxx_title title-block"> | ||
| 56 | <el-row> | ||
| 57 | <el-col :span="20"> | ||
| 58 | 不动产单元情况 | ||
| 59 | </el-col> | ||
| 60 | <el-col :span="4" v-if="ruleForm.sldy.djlx=='500'"> | ||
| 61 | <el-form-item label="是否创建证书:" style="height:24px"> | ||
| 62 | <el-radio-group v-model="ruleForm.sldy.sfxysczs"> | ||
| 63 | <el-radio label="1">是</el-radio> | ||
| 64 | <el-radio label="0">否</el-radio> | ||
| 65 | </el-radio-group> | ||
| 66 | </el-form-item> | ||
| 67 | </el-col> | ||
| 68 | </el-row> | ||
| 69 | <div class="triangle"></div> | ||
| 70 | </div> | ||
| 71 | <el-row :gutter="10" v-if="ruleForm.qlxx"> | ||
| 72 | <el-col :span="8"> | ||
| 73 | <el-form-item label="不动产单元号:"> | ||
| 74 | <el-input disabled v-model="ruleForm.qlxx.bdcdyh"></el-input> | ||
| 75 | </el-form-item> | ||
| 76 | </el-col> | ||
| 77 | <el-col :span="16"> | ||
| 78 | <el-form-item label="坐落:"> | ||
| 79 | <el-input disabled v-model="ruleForm.sldy.zl"></el-input> | ||
| 80 | </el-form-item> | ||
| 81 | </el-col> | ||
| 82 | </el-row> | ||
| 83 | <el-row :gutter="10"> | ||
| 84 | <el-col :span="8"> | ||
| 85 | <el-form-item label="发包方:"> | ||
| 86 | <el-input v-model="ruleForm.lq.fbf" :disabled="!viewEdit"></el-input> | ||
| 87 | </el-form-item> | ||
| 88 | </el-col> | ||
| 89 | <el-col :span="8"> | ||
| 90 | <el-form-item label="发包方代码:"> | ||
| 91 | <el-input v-model="ruleForm.lq.fbfdm" :disabled="!viewEdit"></el-input> | ||
| 92 | </el-form-item> | ||
| 93 | </el-col> | ||
| 94 | <el-col :span="8"> | ||
| 95 | <el-form-item label="使用权(承包)面积:"> | ||
| 96 | <el-input v-model="ruleForm.lq.syqmj" :disabled="!viewEdit"></el-input> | ||
| 97 | </el-form-item> | ||
| 98 | </el-col> | ||
| 99 | </el-row> | ||
| 100 | <el-row :gutter="10"> | ||
| 101 | <el-col :span="8"> | ||
| 102 | <el-form-item label="林地所有权性质:"> | ||
| 103 | <el-select v-model="ruleForm.lq.ldsyqxz" :disabled="!viewEdit"> | ||
| 104 | <el-option | ||
| 105 | v-for="item in dictData['A45']" | ||
| 106 | :key="item.dcode" | ||
| 107 | :label="item.dname" | ||
| 108 | :value="item.dcode"> | ||
| 109 | </el-option> | ||
| 110 | </el-select> | ||
| 111 | </el-form-item> | ||
| 112 | </el-col> | ||
| 113 | <el-col :span="8"> | ||
| 114 | <el-form-item label="森林类别:"> | ||
| 115 | <el-input v-model="ruleForm.lq.sllb" :disabled="!viewEdit"></el-input> | ||
| 116 | </el-form-item> | ||
| 117 | </el-col> | ||
| 118 | <el-col :span="8"> | ||
| 119 | <el-form-item label="主要树种:"> | ||
| 120 | <el-input v-model="ruleForm.lq.zysz" :disabled="!viewEdit"></el-input> | ||
| 121 | </el-form-item> | ||
| 122 | </el-col> | ||
| 123 | </el-row> | ||
| 124 | <el-row :gutter="10"> | ||
| 125 | <el-col :span="8"> | ||
| 126 | <el-form-item label="株数:"> | ||
| 127 | <el-input v-model="ruleForm.lq.zs" :disabled="!viewEdit"></el-input> | ||
| 128 | </el-form-item> | ||
| 129 | </el-col> | ||
| 130 | <el-col :span="8"> | ||
| 131 | <el-form-item label="林种:"> | ||
| 132 | <el-select v-model="ruleForm.lq.lz" :disabled="!viewEdit"> | ||
| 133 | <el-option | ||
| 134 | v-for="item in dictData['A26']" | ||
| 135 | :key="item.dcode" | ||
| 136 | :label="item.dname" | ||
| 137 | :value="item.dcode"> | ||
| 138 | </el-option> | ||
| 139 | </el-select> | ||
| 140 | </el-form-item> | ||
| 141 | </el-col> | ||
| 142 | <el-col :span="8"> | ||
| 143 | <el-form-item label="起源:"> | ||
| 144 | <el-select v-model="ruleForm.lq.qy" :disabled="!viewEdit"> | ||
| 145 | <el-option | ||
| 146 | v-for="item in dictData['A52']" | ||
| 147 | :key="item.dcode" | ||
| 148 | :label="item.dname" | ||
| 149 | :value="item.dcode"> | ||
| 150 | </el-option> | ||
| 151 | </el-select> | ||
| 152 | </el-form-item> | ||
| 153 | </el-col> | ||
| 154 | </el-row> | ||
| 155 | <el-row :gutter="10"> | ||
| 156 | <el-col :span="8"> | ||
| 157 | <el-form-item label="造林年度:"> | ||
| 158 | <el-date-picker | ||
| 159 | class="width100" | ||
| 160 | value-format="yyyy" | ||
| 161 | v-model="ruleForm.lq.zlnd" | ||
| 162 | :disabled="!viewEdit" | ||
| 163 | type="year"> | ||
| 164 | </el-date-picker> | ||
| 165 | </el-form-item> | ||
| 166 | </el-col> | ||
| 167 | <el-col :span="8"> | ||
| 168 | <el-form-item label="林班:"> | ||
| 169 | <el-input v-model="ruleForm.lq.lb" :disabled="!viewEdit"></el-input> | ||
| 170 | </el-form-item> | ||
| 171 | </el-col> | ||
| 172 | <el-col :span="8"> | ||
| 173 | <el-form-item label="小班:"> | ||
| 174 | <el-input v-model="ruleForm.lq.xb" :disabled="!viewEdit"></el-input> | ||
| 175 | </el-form-item> | ||
| 176 | </el-col> | ||
| 177 | </el-row> | ||
| 178 | <el-row :gutter="10"> | ||
| 179 | <el-col :span="8"> | ||
| 180 | <el-form-item label="小地名:"> | ||
| 181 | <el-input v-model="ruleForm.lq.xdm" :disabled="!viewEdit"></el-input> | ||
| 182 | </el-form-item> | ||
| 183 | </el-col> | ||
| 184 | <el-col :span="8"> | ||
| 185 | <el-form-item label="林地使用(承包)起始时间:"> | ||
| 186 | <el-date-picker | ||
| 187 | class="width100" | ||
| 188 | value-format="yyyy-MM-dd HH:mm:ss" | ||
| 189 | v-model="ruleForm.lq.ldsyqssj" | ||
| 190 | :disabled="!viewEdit" | ||
| 191 | type="date"></el-date-picker> | ||
| 192 | </el-form-item> | ||
| 193 | </el-col> | ||
| 194 | <el-col :span="8"> | ||
| 195 | <el-form-item label="林地使用(承包)结束时间:"> | ||
| 196 | <el-date-picker | ||
| 197 | class="width100" | ||
| 198 | value-format="yyyy-MM-dd HH:mm:ss" | ||
| 199 | v-model="ruleForm.lq.ldsyjssj" | ||
| 200 | :disabled="!viewEdit" | ||
| 201 | type="date"></el-date-picker> | ||
| 202 | </el-form-item> | ||
| 203 | </el-col> | ||
| 204 | </el-row> | ||
| 205 | <el-row :gutter="10"> | ||
| 206 | <el-col :span="8"> | ||
| 207 | <el-form-item label="林地使用 (承包)期限:"> | ||
| 208 | <el-input v-model="ruleForm.lq.ldsyqx" :disabled="!viewEdit"></el-input> | ||
| 209 | </el-form-item> | ||
| 210 | </el-col> | ||
| 211 | </el-row> | ||
| 212 | <el-row :gutter="10"> | ||
| 213 | <el-col :span="24"> | ||
| 214 | <el-form-item label="附记:"> | ||
| 215 | <el-input | ||
| 216 | v-model="ruleForm.lq.fj" | ||
| 217 | :disabled="!viewEdit" | ||
| 218 | type="textarea" | ||
| 219 | maxlength="500" | ||
| 220 | show-word-limit></el-input> | ||
| 221 | </el-form-item> | ||
| 222 | </el-col> | ||
| 223 | </el-row> | ||
| 224 | <div class="slxx_title title-block"> | ||
| 225 | 权利人信息 | ||
| 226 | <div class="triangle"></div> | ||
| 227 | </div> | ||
| 228 | <el-row :gutter="10"> | ||
| 229 | <el-col :span="12" v-if="ruleForm.qlxx"> | ||
| 230 | <el-form-item label="共有方式:"> | ||
| 231 | <el-radio-group | ||
| 232 | :disabled="!viewEdit" | ||
| 233 | v-model="ruleForm.sldy.gyfs"> | ||
| 234 | <el-radio label="0">单独所有</el-radio> | ||
| 235 | <el-radio label="1">共同共有</el-radio> | ||
| 236 | <el-radio label="2">按份所有</el-radio> | ||
| 237 | <el-radio label="3">其它共有</el-radio> | ||
| 238 | </el-radio-group> | ||
| 239 | </el-form-item> | ||
| 240 | </el-col> | ||
| 241 | <el-col :span="6" v-show="ruleForm.sldy.gyfs != '0'"> | ||
| 242 | <el-form-item label="是否分别持证:"> | ||
| 243 | <el-radio-group | ||
| 244 | v-model="ruleForm.sldy.sqfbcz" | ||
| 245 | :disabled="!viewEdit" | ||
| 246 | @input="updaterow()"> | ||
| 247 | <el-radio :label="1">是</el-radio> | ||
| 248 | <el-radio :label="0">否</el-radio> | ||
| 249 | </el-radio-group> | ||
| 250 | </el-form-item> | ||
| 251 | </el-col> | ||
| 252 | <el-col | ||
| 253 | :span="6" | ||
| 254 | v-show="ruleForm.sldy.sqfbcz == '0' && ruleForm.sldy.gyfs != '0'"> | ||
| 255 | <el-form-item label="持证人:"> | ||
| 256 | <el-select | ||
| 257 | v-model="czr" | ||
| 258 | placeholder="持证人" | ||
| 259 | :disabled="!viewEdit"> | ||
| 260 | <el-option | ||
| 261 | v-for="(item, index) in czrOptions" | ||
| 262 | :key="index" | ||
| 263 | :label="item.sqrmc" | ||
| 264 | :value="item.id"> | ||
| 265 | </el-option> | ||
| 266 | </el-select> | ||
| 267 | </el-form-item> | ||
| 268 | </el-col> | ||
| 269 | </el-row> | ||
| 270 | <qlrCommonTable | ||
| 271 | @upDateQlrxxList="upDateQlrxxList" | ||
| 272 | :tableData="ruleForm.qlrList" | ||
| 273 | :disabled="viewEdit" | ||
| 274 | :gyfs="ruleForm.sldy.gyfs" /> | ||
| 275 | |||
| 276 | <div v-if="ruleForm.ywrList && ruleForm.sldy.djlx == '200'"> | ||
| 277 | <div class="slxx_title title-block"> | ||
| 278 | 义务人信息 | ||
| 279 | <div class="triangle"></div> | ||
| 280 | </div> | ||
| 281 | <ywrCommonTable | ||
| 282 | v-if="ruleForm.qlxx" | ||
| 283 | :disabled="viewEdit" | ||
| 284 | @upDateQlrxxList="upDateYwrxxList" | ||
| 285 | :tableData="ruleForm.ywrList" | ||
| 286 | :gyfs="ruleForm.sldy.gyfs" /> | ||
| 287 | </div> | ||
| 288 | <div class="slxx_title title-block"> | ||
| 289 | 登记原因 | ||
| 290 | <div class="triangle"></div> | ||
| 291 | </div> | ||
| 292 | <el-row :gutter="10"> | ||
| 293 | <el-col> | ||
| 294 | <el-form-item v-if="ruleForm.sldy" label="登记原因:" prop="lq.djyy"> | ||
| 295 | <el-input | ||
| 296 | class="textArea" | ||
| 297 | type="textarea" | ||
| 298 | maxlength="500" | ||
| 299 | show-word-limit | ||
| 300 | :disabled="!viewEdit" | ||
| 301 | v-model="ruleForm.lq.djyy"> | ||
| 302 | </el-input> | ||
| 303 | </el-form-item> | ||
| 304 | </el-col> | ||
| 305 | </el-row> | ||
| 306 | </div> | ||
| 307 | <el-row class="btn" v-if="isSave"> | ||
| 308 | <el-form-item> | ||
| 309 | <el-button type="primary" @click="onSubmit">保存</el-button> | ||
| 310 | </el-form-item> | ||
| 311 | </el-row> | ||
| 312 | </el-form> | ||
| 313 | </div> | ||
| 314 | </template> | ||
| 315 | <script> | ||
| 316 | import { mapGetters } from "vuex"; | ||
| 317 | import ywmix from "@/views/ywbl/mixin/index"; | ||
| 318 | import qlrCommonTable from "@/views/workflow/components/qlrCommonTable"; | ||
| 319 | import ywrCommonTable from "@/views/workflow/components/ywrCommonTable"; | ||
| 320 | import tdytTable from "@/views/workflow/components/tdytTable"; | ||
| 321 | import { Init, saveData } from "@/api/workflow/lqFlow.js"; | ||
| 322 | export default { | ||
| 323 | mixins: [ywmix], | ||
| 324 | mounted () { | ||
| 325 | let that = this; | ||
| 326 | this.loading = true | ||
| 327 | this.viewEdit = this.$parent.currentSelectTab.ableOperation; | ||
| 328 | this.propsParam = this.$attrs; | ||
| 329 | var formdata = new FormData(); | ||
| 330 | formdata.append("bsmSldy", this.propsParam.bsmSldy); | ||
| 331 | formdata.append("djlx", this.propsParam.djlx); | ||
| 332 | formdata.append("isEdit", this.viewEdit); | ||
| 333 | Init(formdata).then((res) => { | ||
| 334 | setTimeout(() => { | ||
| 335 | this.loading = false | ||
| 336 | }, 200) | ||
| 337 | if (res.code === 200 && res.result) { | ||
| 338 | that.ruleForm = { | ||
| 339 | ...res.result, | ||
| 340 | ...res.result.qlxxdatas | ||
| 341 | }; | ||
| 342 | that.ruleForm.qlrList.forEach(item => { | ||
| 343 | item.id = item.bsmSqr | ||
| 344 | if (item.sfczr == '1') { | ||
| 345 | that.czr = item.bsmSqr | ||
| 346 | } | ||
| 347 | }) | ||
| 348 | that.czrOptions = that.ruleForm.qlrList; | ||
| 349 | that.ruleForm.lq.zlnd ? that.$set(that.ruleForm.lq, 'zlnd', that.ruleForm.lq.zlnd.toString()) : that.$set(that.ruleForm.lq, 'zlnd', "") | ||
| 350 | that.isSave = that.viewEdit | ||
| 351 | } else { | ||
| 352 | that.isSave = false | ||
| 353 | that.$confirm(res.message, '提示', { | ||
| 354 | cancelButtonText: '取消', | ||
| 355 | showConfirmButton: false, | ||
| 356 | type: 'warning' | ||
| 357 | }) | ||
| 358 | } | ||
| 359 | }).catch(() => { | ||
| 360 | this.loading = false | ||
| 361 | this.isSave = false | ||
| 362 | }) | ||
| 363 | }, | ||
| 364 | components: { qlrCommonTable, tdytTable, ywrCommonTable }, | ||
| 365 | computed: { | ||
| 366 | ...mapGetters(["dictData", "flag"]) | ||
| 367 | }, | ||
| 368 | data () { | ||
| 369 | return { | ||
| 370 | isSave: true, | ||
| 371 | loading: false, | ||
| 372 | disabled: true, | ||
| 373 | tdytOption: [], | ||
| 374 | czrOptions: [], | ||
| 375 | czr: "", | ||
| 376 | ruleForm: { | ||
| 377 | lq: { | ||
| 378 | }, | ||
| 379 | flow: { | ||
| 380 | ywh: "", | ||
| 381 | }, | ||
| 382 | qlxx: { | ||
| 383 | mj: "", | ||
| 384 | }, | ||
| 385 | sldy: { | ||
| 386 | gyfs: "", | ||
| 387 | }, | ||
| 388 | slsq: {}, | ||
| 389 | fdcq2: { | ||
| 390 | zyjzmj: "", | ||
| 391 | ftjzmj: "", | ||
| 392 | }, | ||
| 393 | zdjbxx: { | ||
| 394 | ghytmc: "", | ||
| 395 | }, | ||
| 396 | }, | ||
| 397 | //传递参数 | ||
| 398 | propsParam: this.$attrs, | ||
| 399 | //表单是否可操作 | ||
| 400 | viewEdit: true, | ||
| 401 | rules: { | ||
| 402 | 'lq.djyy': [ | ||
| 403 | { required: true, message: '请输入登记原因', trigger: 'blur' } | ||
| 404 | ] | ||
| 405 | } | ||
| 406 | }; | ||
| 407 | }, | ||
| 408 | methods: { | ||
| 409 | /** | ||
| 410 | * @description: 更新土地用途信息 | ||
| 411 | * @param {*} val | ||
| 412 | * @author: renchao | ||
| 413 | */ | ||
| 414 | upDateTdytxxList (val) { | ||
| 415 | this.ruleForm.tdytqxList && (this.ruleForm.tdytqxList = _.cloneDeep(val)); | ||
| 416 | }, | ||
| 417 | /** | ||
| 418 | * @description: 是否持证人变化 | ||
| 419 | * @param {*} val | ||
| 420 | * @author: renchao | ||
| 421 | */ | ||
| 422 | updaterow () { | ||
| 423 | this.czr = ""; | ||
| 424 | }, | ||
| 425 | /** | ||
| 426 | * @description: 更新权利人信息 | ||
| 427 | * @param {*} val | ||
| 428 | * @author: renchao | ||
| 429 | */ | ||
| 430 | upDateQlrxxList (val) { | ||
| 431 | this.ruleForm.qlrList = _.cloneDeep(val); | ||
| 432 | this.czrOptions = this.ruleForm.qlrList; | ||
| 433 | this.num = 0 | ||
| 434 | this.ruleForm.qlrList.forEach(item => { | ||
| 435 | if (item.id == this.czr) { | ||
| 436 | this.num++ | ||
| 437 | } | ||
| 438 | }) | ||
| 439 | if (this.num == 0) { | ||
| 440 | this.czr = '' | ||
| 441 | } | ||
| 442 | }, | ||
| 443 | /** | ||
| 444 | * @description: 更新业务人信息 | ||
| 445 | * @param {*} val | ||
| 446 | * @author: renchao | ||
| 447 | */ | ||
| 448 | upDateYwrxxList (val) { | ||
| 449 | this.ruleForm.ywrList = _.cloneDeep(val); | ||
| 450 | }, | ||
| 451 | /** | ||
| 452 | * @description: onSubmit | ||
| 453 | * @author: renchao | ||
| 454 | */ | ||
| 455 | onSubmit () { | ||
| 456 | let that = this; | ||
| 457 | if (this.ruleForm.qlrList.length == 0) { | ||
| 458 | this.$message({ | ||
| 459 | showClose: true, | ||
| 460 | message: "请确认权利人信息", | ||
| 461 | type: "error", | ||
| 462 | }); | ||
| 463 | return false; | ||
| 464 | } | ||
| 465 | |||
| 466 | if (this.ruleForm.sldy.gyfs == "0") { | ||
| 467 | if (this.ruleForm.qlrList.length > 1) { | ||
| 468 | this.$message({ | ||
| 469 | showClose: true, | ||
| 470 | message: "共有方式:单独所有,权利人只能是一个人", | ||
| 471 | type: "error", | ||
| 472 | }); | ||
| 473 | return false; | ||
| 474 | } | ||
| 475 | this.ruleForm.qlrList[0].sfczr = "1"; | ||
| 476 | } else { | ||
| 477 | if (this.ruleForm.qlrList.length <= 1) { | ||
| 478 | this.$message({ | ||
| 479 | showClose: true, | ||
| 480 | message: | ||
| 481 | "共有方式:共同所有,按份所有,其他所有,权利人必须是两个以上", | ||
| 482 | type: "error", | ||
| 483 | }); | ||
| 484 | return false; | ||
| 485 | } | ||
| 486 | //是否分别持证 | ||
| 487 | if (this.ruleForm.sldy.sqfbcz == "1") { | ||
| 488 | //是 | ||
| 489 | this.ruleForm.qlrList.forEach((item, index) => { | ||
| 490 | item.sfczr = "1"; | ||
| 491 | }); | ||
| 492 | } else { | ||
| 493 | if (that.czr === '') { | ||
| 494 | that.$message({ | ||
| 495 | showClose: true, | ||
| 496 | message: "请选择持证人", | ||
| 497 | type: "error", | ||
| 498 | }); | ||
| 499 | return false; | ||
| 500 | } | ||
| 501 | this.ruleForm.qlrList.forEach(item => { | ||
| 502 | if (item.id == that.czr) { | ||
| 503 | item.sfczr = "1" | ||
| 504 | } else { | ||
| 505 | item.sfczr = "0" | ||
| 506 | } | ||
| 507 | }) | ||
| 508 | } | ||
| 509 | } | ||
| 510 | this.$refs['ruleForm'].validate((valid) => { | ||
| 511 | if (valid) { | ||
| 512 | that.$store.dispatch("user/refreshPage", false); | ||
| 513 | saveData(that.ruleForm).then((res) => { | ||
| 514 | if (res.code === 200) { | ||
| 515 | that.$message({ | ||
| 516 | showClose: true, | ||
| 517 | message: "保存成功!", | ||
| 518 | type: "success", | ||
| 519 | }); | ||
| 520 | that.$store.dispatch("user/refreshPage", true); | ||
| 521 | } else { | ||
| 522 | that.$message({ | ||
| 523 | showClose: true, | ||
| 524 | message: res.message, | ||
| 525 | type: "error", | ||
| 526 | }); | ||
| 527 | } | ||
| 528 | }) | ||
| 529 | } else { | ||
| 530 | this.$message({ | ||
| 531 | showClose: true, | ||
| 532 | message: "请输入登记原因", | ||
| 533 | type: "error" | ||
| 534 | }) | ||
| 535 | return false | ||
| 536 | } | ||
| 537 | }) | ||
| 538 | } | ||
| 539 | } | ||
| 540 | }; | ||
| 541 | </script> | ||
| 542 | <style scoped lang="scss"> | ||
| 543 | @import "~@/styles/public.scss"; | ||
| 544 | |||
| 545 | /deep/.el-form { | ||
| 546 | display: flex; | ||
| 547 | flex-direction: column; | ||
| 548 | height: calc(100vh - 130px); | ||
| 549 | } | ||
| 550 | |||
| 551 | /deep/.el-form-item__label { | ||
| 552 | padding: 0; | ||
| 553 | } | ||
| 554 | |||
| 555 | /deep/.el-radio { | ||
| 556 | margin-right: 10px; | ||
| 557 | } | ||
| 558 | |||
| 559 | /deep/.el-select { | ||
| 560 | width: 100%; | ||
| 561 | } | ||
| 562 | |||
| 563 | /deep/.el-form-item { | ||
| 564 | margin-bottom: 3px; | ||
| 565 | } | ||
| 566 | |||
| 567 | .marginBot0 { | ||
| 568 | margin-bottom: 0 !important; | ||
| 569 | } | ||
| 570 | |||
| 571 | .slxx { | ||
| 572 | box-sizing: border-box; | ||
| 573 | } | ||
| 574 | |||
| 575 | .slxx_con { | ||
| 576 | flex: 1; | ||
| 577 | height: 100%; | ||
| 578 | background-color: #ffffff; | ||
| 579 | overflow-y: auto; | ||
| 580 | padding-right: 3px; | ||
| 581 | overflow-x: hidden; | ||
| 582 | } | ||
| 583 | |||
| 584 | .submit_btn { | ||
| 585 | height: 50px; | ||
| 586 | } | ||
| 587 | |||
| 588 | .btn { | ||
| 589 | text-align: center; | ||
| 590 | padding-top: 10px; | ||
| 591 | height: 36px; | ||
| 592 | background-color: #ffffff; | ||
| 593 | padding: 5px 0; | ||
| 594 | } | ||
| 595 | |||
| 596 | .textArea { | ||
| 597 | /deep/.el-textarea__inner { | ||
| 598 | min-height: 90px !important; | ||
| 599 | } | ||
| 600 | } | ||
| 601 | |||
| 602 | /deep/.el-form-item__label { | ||
| 603 | padding-bottom: 0px; | ||
| 604 | } | ||
| 605 | </style> |
| 1 | <template> | ||
| 2 | <!-- 受理信息 --> | ||
| 3 | <div class="slxx"> | ||
| 4 | <el-form | ||
| 5 | :model="ruleForm" | ||
| 6 | :rules="rules" | ||
| 7 | v-Loading="loading" | ||
| 8 | ref="ruleForm" | ||
| 9 | :label-position="flag ? 'top' : ''" | ||
| 10 | :inline="flag" | ||
| 11 | label-width="120px"> | ||
| 12 | <div class="slxx_con" :class="flag ? 'formMarginBot0' : ''"> | ||
| 13 | <div class="slxx_title title-block"> | ||
| 14 | 申请业务信息 | ||
| 15 | <div class="triangle"></div> | ||
| 16 | </div> | ||
| 17 | <el-row :gutter="10"> | ||
| 18 | <el-col :span="8"> | ||
| 19 | <el-form-item label="业务号:"> | ||
| 20 | <el-input disabled v-model="ruleForm.flow.ywh"></el-input> | ||
| 21 | </el-form-item> | ||
| 22 | </el-col> | ||
| 23 | <el-col :span="8"> | ||
| 24 | <el-form-item label="受理人员:"> | ||
| 25 | <el-input disabled v-model="ruleForm.slsq.slry"></el-input> | ||
| 26 | </el-form-item> | ||
| 27 | </el-col> | ||
| 28 | <el-col :span="8"> | ||
| 29 | <el-form-item label="受理时间:"> | ||
| 30 | <el-input disabled v-model="ruleForm.slsq.slsj"></el-input> | ||
| 31 | </el-form-item> | ||
| 32 | </el-col> | ||
| 33 | </el-row> | ||
| 34 | <el-row :gutter="10"> | ||
| 35 | <el-col :span="8"> | ||
| 36 | <el-form-item label="权利类型:"> | ||
| 37 | <el-input disabled v-model="ruleForm.sldy.qllxmc"></el-input> | ||
| 38 | </el-form-item> | ||
| 39 | </el-col> | ||
| 40 | <el-col :span="8"> | ||
| 41 | <el-form-item label="登记类型:"> | ||
| 42 | <el-input disabled v-model="ruleForm.sldy.djlxmc"></el-input> | ||
| 43 | </el-form-item> | ||
| 44 | </el-col> | ||
| 45 | <el-col :span="8"> | ||
| 46 | <el-form-item label="登记情形:"> | ||
| 47 | <el-input disabled v-model="ruleForm.slsq.djqxmc"></el-input> | ||
| 48 | </el-form-item> | ||
| 49 | </el-col> | ||
| 50 | </el-row> | ||
| 51 | <div class="slxx_title title-block"> | ||
| 52 | <el-row> | ||
| 53 | <el-col :span="20"> | ||
| 54 | 不动产单元情况 | ||
| 55 | </el-col> | ||
| 56 | <el-col :span="4" v-if="ruleForm.sldy.djlx=='500'"> | ||
| 57 | <el-form-item label="是否创建证书:" style="height:24px"> | ||
| 58 | <el-radio-group v-model="ruleForm.sldy.sfxysczs"> | ||
| 59 | <el-radio label="1">是</el-radio> | ||
| 60 | <el-radio label="0">否</el-radio> | ||
| 61 | </el-radio-group> | ||
| 62 | </el-form-item> | ||
| 63 | </el-col> | ||
| 64 | </el-row> | ||
| 65 | <div class="triangle"></div> | ||
| 66 | </div> | ||
| 67 | <el-row :gutter="10"> | ||
| 68 | <el-col :span="8"> | ||
| 69 | <el-form-item label="宗地代码:"> | ||
| 70 | <el-input disabled v-model="ruleForm.zdjbxx.zddm"></el-input> | ||
| 71 | </el-form-item> | ||
| 72 | </el-col> | ||
| 73 | <el-col :span="8"> | ||
| 74 | <el-form-item label="不动产单元号:"> | ||
| 75 | <el-input disabled v-model="ruleForm.zdjbxx.bdcdyh"></el-input> | ||
| 76 | </el-form-item> | ||
| 77 | </el-col> | ||
| 78 | <el-col :span="8"> | ||
| 79 | <el-form-item label="权利性质:"> | ||
| 80 | <el-input disabled v-model="ruleForm.zdjbxx.qlxzmc"></el-input> | ||
| 81 | </el-form-item> | ||
| 82 | </el-col> | ||
| 83 | </el-row> | ||
| 84 | <el-row :gutter="10"> | ||
| 85 | <el-col :span="8"> | ||
| 86 | <el-form-item label="宗地面积:"> | ||
| 87 | <el-input disabled v-model="ruleForm.zdjbxx.zdmj"></el-input> | ||
| 88 | </el-form-item> | ||
| 89 | </el-col> | ||
| 90 | <el-col :span="8"> | ||
| 91 | <el-form-item label="土地用途:"> | ||
| 92 | <el-input disabled v-model="ruleForm.zdjbxx.ghytmc"></el-input> | ||
| 93 | </el-form-item> | ||
| 94 | </el-col> | ||
| 95 | <el-col :span="8"> | ||
| 96 | <el-form-item label="权利设定方式:"> | ||
| 97 | <el-input disabled v-model="ruleForm.zdjbxx.qlsdfsmc"></el-input> | ||
| 98 | </el-form-item> | ||
| 99 | </el-col> | ||
| 100 | </el-row> | ||
| 101 | <el-row :gutter="10"> | ||
| 102 | <el-col :span="16"> | ||
| 103 | <el-form-item label="坐落:"> | ||
| 104 | <el-input disabled v-model="ruleForm.sldy.zl"></el-input> | ||
| 105 | </el-form-item> | ||
| 106 | </el-col> | ||
| 107 | </el-row> | ||
| 108 | <el-row :gutter="10"> | ||
| 109 | <el-col :span="8"> | ||
| 110 | <el-form-item label="发包方名称:"> | ||
| 111 | <el-input v-model="ruleForm.nydsyq.fbfmc"></el-input> | ||
| 112 | </el-form-item> | ||
| 113 | </el-col> | ||
| 114 | <el-col :span="8"> | ||
| 115 | <el-form-item label="发包方代码:"> | ||
| 116 | <el-input v-model="ruleForm.nydsyq.fbfdm"></el-input> | ||
| 117 | </el-form-item> | ||
| 118 | </el-col> | ||
| 119 | <el-col :span="8"> | ||
| 120 | <el-form-item label="土地所有权性质:"> | ||
| 121 | <el-select | ||
| 122 | v-model="ruleForm.nydsyq.tdsyqxzmc" | ||
| 123 | :disabled="!viewEdit" | ||
| 124 | class="width100" | ||
| 125 | filterable | ||
| 126 | clearable> | ||
| 127 | <el-option | ||
| 128 | v-for="item in dictData['A45']" | ||
| 129 | :key="item.dname" | ||
| 130 | :label="item.dname" | ||
| 131 | :value="item.dname"> | ||
| 132 | </el-option> | ||
| 133 | </el-select> | ||
| 134 | </el-form-item> | ||
| 135 | </el-col> | ||
| 136 | </el-row> | ||
| 137 | <el-row :gutter="10"> | ||
| 138 | <el-col :span="8"> | ||
| 139 | <el-form-item label="承包期限:"> | ||
| 140 | <el-input disabled v-model="ruleForm.nydsyq.cbqx"></el-input> | ||
| 141 | </el-form-item> | ||
| 142 | </el-col> | ||
| 143 | <el-col :span="16"> | ||
| 144 | <el-form-item label="承包起止时间:"> | ||
| 145 | <el-input disabled v-model="ruleForm.nydsyq.cbqzsj"></el-input> | ||
| 146 | </el-form-item> | ||
| 147 | </el-col> | ||
| 148 | </el-row> | ||
| 149 | <el-row :gutter="10"> | ||
| 150 | <el-col :span="8"> | ||
| 151 | <el-form-item label="水域滩涂类型:"> | ||
| 152 | <el-select | ||
| 153 | v-model="ruleForm.nydsyq.syttlx" | ||
| 154 | :disabled="!viewEdit" | ||
| 155 | class="width100" | ||
| 156 | filterable | ||
| 157 | clearable | ||
| 158 | @change="changeSyttlx"> | ||
| 159 | <el-option | ||
| 160 | v-for="item in dictData['A23']" | ||
| 161 | :key="item.dcode" | ||
| 162 | :label="item.dname" | ||
| 163 | :value="item.dcode"> | ||
| 164 | </el-option> | ||
| 165 | </el-select> | ||
| 166 | </el-form-item> | ||
| 167 | </el-col> | ||
| 168 | <el-col :span="8"> | ||
| 169 | <el-form-item label="养殖业方式:"> | ||
| 170 | <el-select | ||
| 171 | v-model="ruleForm.nydsyq.yzyfs" | ||
| 172 | :disabled="!viewEdit" | ||
| 173 | class="width100" | ||
| 174 | filterable | ||
| 175 | clearable | ||
| 176 | @change="changeYzyfs"> | ||
| 177 | <el-option | ||
| 178 | v-for="item in dictData['A24']" | ||
| 179 | :key="item.dcode" | ||
| 180 | :label="item.dname" | ||
| 181 | :value="item.dcode"> | ||
| 182 | </el-option> | ||
| 183 | </el-select> | ||
| 184 | </el-form-item> | ||
| 185 | </el-col> | ||
| 186 | <el-col :span="8"> | ||
| 187 | <el-form-item label="草原质量:"> | ||
| 188 | <el-input | ||
| 189 | v-model="ruleForm.nydsyq.cyzl" | ||
| 190 | :disabled="!viewEdit"></el-input> | ||
| 191 | </el-form-item> | ||
| 192 | </el-col> | ||
| 193 | </el-row> | ||
| 194 | <el-row :gutter="10"> | ||
| 195 | <el-col :span="8"> | ||
| 196 | <el-form-item label="适宜载畜量:"> | ||
| 197 | <el-input | ||
| 198 | v-model="ruleForm.nydsyq.syzcl" | ||
| 199 | :disabled="!viewEdit" | ||
| 200 | oninput="value=value.replace(/[^\d.]/g,'')"></el-input> | ||
| 201 | </el-form-item> | ||
| 202 | </el-col> | ||
| 203 | <el-col :span="8"> | ||
| 204 | <el-form-item label="用地用海分类:"> | ||
| 205 | <el-select | ||
| 206 | v-model="ruleForm.nydsyq.ydyhfl" | ||
| 207 | class="width100" | ||
| 208 | :disabled="!viewEdit" | ||
| 209 | filterable | ||
| 210 | clearable | ||
| 211 | @change="changeYdyhfl"> | ||
| 212 | <el-option | ||
| 213 | v-for="item in dictData['A51']" | ||
| 214 | :key="item.dcode" | ||
| 215 | :label="item.dname" | ||
| 216 | :value="item.dcode"> | ||
| 217 | </el-option> | ||
| 218 | </el-select> | ||
| 219 | </el-form-item> | ||
| 220 | </el-col> | ||
| 221 | <el-col :span="8"> | ||
| 222 | <el-form-item label="土地承包合同:"> | ||
| 223 | <el-input | ||
| 224 | v-model="ruleForm.nydsyq.tdcbht" | ||
| 225 | :disabled="!viewEdit"></el-input> | ||
| 226 | </el-form-item> | ||
| 227 | </el-col> | ||
| 228 | </el-row> | ||
| 229 | <el-row :gutter="10"> | ||
| 230 | <el-col> | ||
| 231 | <el-form-item label="附记:" prop="fj"> | ||
| 232 | <el-input | ||
| 233 | type="textarea" | ||
| 234 | maxlength="500" | ||
| 235 | show-word-limit | ||
| 236 | v-model="ruleForm.nydsyq.fj" | ||
| 237 | :disabled="!viewEdit"></el-input> | ||
| 238 | </el-form-item> | ||
| 239 | </el-col> | ||
| 240 | </el-row> | ||
| 241 | <div class="slxx_title title-block"> | ||
| 242 | 权利人信息 | ||
| 243 | <div class="triangle"></div> | ||
| 244 | </div> | ||
| 245 | <el-row :gutter="10"> | ||
| 246 | <el-col :span="12"> | ||
| 247 | <el-form-item label="共有方式:"> | ||
| 248 | <el-radio-group | ||
| 249 | v-model="ruleForm.sldy.gyfs" | ||
| 250 | :disabled="!viewEdit"> | ||
| 251 | <el-radio label="0">单独所有</el-radio> | ||
| 252 | <el-radio label="1">共同共有</el-radio> | ||
| 253 | <el-radio label="2">按份所有</el-radio> | ||
| 254 | <el-radio label="3">其它共有</el-radio> | ||
| 255 | </el-radio-group> | ||
| 256 | </el-form-item> | ||
| 257 | </el-col> | ||
| 258 | <el-col :span="6" v-show="ruleForm.sldy.gyfs != '0'"> | ||
| 259 | <el-form-item label="是否分别持证:"> | ||
| 260 | <el-radio-group | ||
| 261 | v-model="ruleForm.sldy.sqfbcz" | ||
| 262 | :disabled="!viewEdit" | ||
| 263 | @input="updaterow()"> | ||
| 264 | <el-radio :label="1">是</el-radio> | ||
| 265 | <el-radio :label="0">否</el-radio> | ||
| 266 | </el-radio-group> | ||
| 267 | </el-form-item> | ||
| 268 | </el-col> | ||
| 269 | <el-col | ||
| 270 | :span="6" | ||
| 271 | v-show="ruleForm.sldy.sqfbcz == '0' && ruleForm.sldy.gyfs != '0'"> | ||
| 272 | <el-form-item label="持证人:"> | ||
| 273 | <el-select | ||
| 274 | v-model="czr" | ||
| 275 | placeholder="持证人" | ||
| 276 | :disabled="!viewEdit"> | ||
| 277 | <el-option | ||
| 278 | v-for="(item,index) in czrOptions" | ||
| 279 | :key="index" | ||
| 280 | :label="item.sqrmc" | ||
| 281 | :value="item.id"> | ||
| 282 | </el-option> | ||
| 283 | </el-select> | ||
| 284 | </el-form-item> | ||
| 285 | </el-col> | ||
| 286 | </el-row> | ||
| 287 | <qlrCommonTable | ||
| 288 | :tableData="ruleForm.qlrList" | ||
| 289 | @upDateQlrxxList="upDateQlrxxList" | ||
| 290 | :disabled="viewEdit" | ||
| 291 | :gyfs="ruleForm.sldy.gyfs" /> | ||
| 292 | <div class="slxx_title title-block"> | ||
| 293 | 家庭成员 | ||
| 294 | <div class="triangle"></div> | ||
| 295 | </div> | ||
| 296 | <JtcyTable | ||
| 297 | :tableData="ruleForm.jtcyList" | ||
| 298 | @upDateJtcyList="upDateJtcyList" | ||
| 299 | :disabled="viewEdit" | ||
| 300 | :gyfs="ruleForm.sldy.gyfs" /> | ||
| 301 | <div class="slxx_title title-block"> | ||
| 302 | 登记原因 | ||
| 303 | <div class="triangle"></div> | ||
| 304 | </div> | ||
| 305 | <el-row :gutter="10"> | ||
| 306 | <el-col> | ||
| 307 | <el-form-item label="登记原因:" prop="nydsyq.djyy"> | ||
| 308 | <el-input | ||
| 309 | class="textArea" | ||
| 310 | type="textarea" | ||
| 311 | maxlength="500" | ||
| 312 | show-word-limit | ||
| 313 | :disabled="!viewEdit" | ||
| 314 | v-model="ruleForm.nydsyq.djyy"> | ||
| 315 | </el-input> | ||
| 316 | </el-form-item> | ||
| 317 | </el-col> | ||
| 318 | </el-row> | ||
| 319 | </div> | ||
| 320 | <el-row class="btn" v-if="isSave"> | ||
| 321 | <el-form-item> | ||
| 322 | <el-button type="primary" @click="onSubmit">保存</el-button> | ||
| 323 | </el-form-item> | ||
| 324 | </el-row> | ||
| 325 | </el-form> | ||
| 326 | </div> | ||
| 327 | </template> | ||
| 328 | <script> | ||
| 329 | import { mapGetters } from "vuex"; | ||
| 330 | import ywmix from "@/views/ywbl/mixin/index"; | ||
| 331 | import { Init, saveData } from "@/api/workflow/nydsyqFlow.js"; | ||
| 332 | import qlrCommonTable from "@/views/workflow/components/qlrCommonTable"; | ||
| 333 | import JtcyTable from "@/views/workflow/components/JtcyTable"; | ||
| 334 | export default { | ||
| 335 | mixins: [ywmix], | ||
| 336 | mounted () { | ||
| 337 | let that = this | ||
| 338 | this.viewEdit = this.$parent.currentSelectTab.ableOperation; | ||
| 339 | this.propsParam = this.$attrs; | ||
| 340 | this.loading = true | ||
| 341 | var formdata = new FormData(); | ||
| 342 | formdata.append("bsmSldy", this.propsParam.bsmSldy); | ||
| 343 | formdata.append("djlx", this.propsParam.djlx); | ||
| 344 | formdata.append("isEdit", this.viewEdit); | ||
| 345 | Init(formdata).then((res) => { | ||
| 346 | setTimeout(() => { | ||
| 347 | that.loading = false | ||
| 348 | }, 200) | ||
| 349 | if (res.code === 200) { | ||
| 350 | that.ruleForm = res.result; | ||
| 351 | that.ruleForm.qlrList.forEach((item) => { | ||
| 352 | item.id = item.bsmSqr | ||
| 353 | if (item.sfczr == '1') { | ||
| 354 | that.czr = item.bsmSqr | ||
| 355 | } | ||
| 356 | }) | ||
| 357 | that.czrOptions = that.ruleForm.qlrList; | ||
| 358 | that.isSave = that.viewEdit | ||
| 359 | } else { | ||
| 360 | that.isSave = false | ||
| 361 | that.$confirm(res.message, '提示', { | ||
| 362 | cancelButtonText: '取消', | ||
| 363 | showConfirmButton: false, | ||
| 364 | type: 'warning' | ||
| 365 | }) | ||
| 366 | } | ||
| 367 | }).catch(() => { | ||
| 368 | this.loading = false | ||
| 369 | this.isSave = false | ||
| 370 | }) | ||
| 371 | }, | ||
| 372 | components: { qlrCommonTable, JtcyTable }, | ||
| 373 | computed: { | ||
| 374 | ...mapGetters(["dictData", "flag"]), | ||
| 375 | }, | ||
| 376 | data () { | ||
| 377 | return { | ||
| 378 | isSave: true, | ||
| 379 | // 键名转换,方法默认是label和children进行树状渲染 | ||
| 380 | normalizer (node) { | ||
| 381 | //方法 | ||
| 382 | if (node.children == null || node.children == "null") { | ||
| 383 | delete node.children; | ||
| 384 | } | ||
| 385 | return { | ||
| 386 | id: node.dcode, | ||
| 387 | label: node.dname, | ||
| 388 | }; | ||
| 389 | }, | ||
| 390 | loading: false, | ||
| 391 | disabled: true, | ||
| 392 | //持证人选项 | ||
| 393 | czrOptions: [], | ||
| 394 | czr: "", | ||
| 395 | ruleForm: { | ||
| 396 | zdjbxx: { | ||
| 397 | ghytmc: "", | ||
| 398 | }, | ||
| 399 | }, | ||
| 400 | //传递参数 | ||
| 401 | propsParam: {}, | ||
| 402 | //表单是否可操作 | ||
| 403 | viewEdit: true, | ||
| 404 | rules: { | ||
| 405 | 'nydsyq.djyy': [ | ||
| 406 | { required: true, message: '请输入登记原因', trigger: 'blur' } | ||
| 407 | ] | ||
| 408 | }, | ||
| 409 | }; | ||
| 410 | }, | ||
| 411 | methods: { | ||
| 412 | /** | ||
| 413 | * @description: onSubmit | ||
| 414 | * @author: renchao | ||
| 415 | */ | ||
| 416 | onSubmit () { | ||
| 417 | let that = this; | ||
| 418 | if (this.ruleForm.qlrList.length == 0) { | ||
| 419 | this.$message({ | ||
| 420 | showClose: true, | ||
| 421 | message: "请确认权利人信息", | ||
| 422 | type: "error", | ||
| 423 | }); | ||
| 424 | return false; | ||
| 425 | } | ||
| 426 | |||
| 427 | if (this.ruleForm.sldy.gyfs == "0") { | ||
| 428 | if (this.ruleForm.qlrList.length > 1) { | ||
| 429 | this.$message({ | ||
| 430 | showClose: true, | ||
| 431 | message: "共有方式:单独所有,权利人只能是一个人", | ||
| 432 | type: "error", | ||
| 433 | }); | ||
| 434 | return false; | ||
| 435 | } | ||
| 436 | this.ruleForm.qlrList[0].sfczr = "1"; | ||
| 437 | } else { | ||
| 438 | if (this.ruleForm.qlrList.length <= 1) { | ||
| 439 | this.$message({ | ||
| 440 | showClose: true, | ||
| 441 | message: | ||
| 442 | "共有方式:共同所有,按份所有,其他所有,权利人必须是两个以上", | ||
| 443 | type: "error", | ||
| 444 | }); | ||
| 445 | return false; | ||
| 446 | } | ||
| 447 | //是否分别持证 | ||
| 448 | if (this.ruleForm.sldy.sqfbcz == "1") { | ||
| 449 | //是 | ||
| 450 | this.ruleForm.qlrList.forEach((item, index) => { | ||
| 451 | item.sfczr = "1"; | ||
| 452 | }); | ||
| 453 | } else { | ||
| 454 | if (that.czr === '') { | ||
| 455 | that.$message({ | ||
| 456 | showClose: true, | ||
| 457 | message: "请选择持证人", | ||
| 458 | type: "error", | ||
| 459 | }) | ||
| 460 | return false; | ||
| 461 | } | ||
| 462 | this.ruleForm.qlrList.forEach((item, index) => { | ||
| 463 | if (item.id == that.czr) { | ||
| 464 | item.sfczr = "1"; | ||
| 465 | } else { | ||
| 466 | item.sfczr = "0"; | ||
| 467 | } | ||
| 468 | }); | ||
| 469 | } | ||
| 470 | } | ||
| 471 | this.$refs['ruleForm'].validate((valid) => { | ||
| 472 | if (valid) { | ||
| 473 | that.$store.dispatch("user/refreshPage", false); | ||
| 474 | saveData(that.ruleForm).then((res) => { | ||
| 475 | if (res.code === 200) { | ||
| 476 | that.$message({ | ||
| 477 | showClose: true, | ||
| 478 | message: "保存成功!", | ||
| 479 | type: "success", | ||
| 480 | }); | ||
| 481 | that.$store.dispatch("user/refreshPage", true); | ||
| 482 | } else { | ||
| 483 | that.$message({ | ||
| 484 | showClose: true, | ||
| 485 | message: res.message, | ||
| 486 | type: "error", | ||
| 487 | }); | ||
| 488 | } | ||
| 489 | }) | ||
| 490 | } else { | ||
| 491 | this.$message({ | ||
| 492 | showClose: true, | ||
| 493 | message: "请输入登记原因", | ||
| 494 | type: "error" | ||
| 495 | }) | ||
| 496 | return false | ||
| 497 | } | ||
| 498 | }) | ||
| 499 | |||
| 500 | }, | ||
| 501 | /** | ||
| 502 | * @description: upDateQlrxxList | ||
| 503 | * @param {*} val | ||
| 504 | * @author: renchao | ||
| 505 | */ | ||
| 506 | upDateQlrxxList (val) { | ||
| 507 | if (!_.isEqual(val, this.ruleForm.qlrList)) { | ||
| 508 | this.ruleForm.qlrList = _.cloneDeep(val); | ||
| 509 | this.czrOptions = this.ruleForm.qlrList; | ||
| 510 | } | ||
| 511 | this.num = 0 | ||
| 512 | this.ruleForm.qlrList.forEach(item => { | ||
| 513 | if (item.id == this.czr) { | ||
| 514 | this.num++ | ||
| 515 | } | ||
| 516 | }) | ||
| 517 | if (this.num == 0) { | ||
| 518 | this.czr = '' | ||
| 519 | } | ||
| 520 | }, | ||
| 521 | /** | ||
| 522 | * @description: 是否持证人变化 | ||
| 523 | * @param {*} val | ||
| 524 | * @author: renchao | ||
| 525 | */ | ||
| 526 | updaterow () { | ||
| 527 | this.czr = ""; | ||
| 528 | }, | ||
| 529 | /** | ||
| 530 | * @description: upDateJtcyList | ||
| 531 | * @param {*} val | ||
| 532 | * @author: renchao | ||
| 533 | */ | ||
| 534 | upDateJtcyList (val) { | ||
| 535 | this.ruleForm.jtcyList = _.cloneDeep(val); | ||
| 536 | }, | ||
| 537 | // 是否持证人变化 | ||
| 538 | /** | ||
| 539 | * @description: 是否持证人变化 | ||
| 540 | * @param {*} val | ||
| 541 | * @author: renchao | ||
| 542 | */ | ||
| 543 | updaterow () { | ||
| 544 | this.czr = ""; | ||
| 545 | }, | ||
| 546 | |||
| 547 | /** | ||
| 548 | * @description: 水域滩涂类型变化事件 | ||
| 549 | * @param {*} e | ||
| 550 | * @author: renchao | ||
| 551 | */ | ||
| 552 | changeSyttlx (e) { | ||
| 553 | let itemLx = {}; | ||
| 554 | itemLx = this.dictData["A23"].find((item) => { | ||
| 555 | return item.dcode == e; | ||
| 556 | }); | ||
| 557 | this.ruleForm.nydsyq.syttlxmc = itemLx.dname; | ||
| 558 | }, | ||
| 559 | /** | ||
| 560 | * @description: 养殖业方式变化事件 | ||
| 561 | * @param {*} e | ||
| 562 | * @author: renchao | ||
| 563 | */ | ||
| 564 | changeYzyfs (e) { | ||
| 565 | let itemLx = {}; | ||
| 566 | itemLx = this.dictData["A24"].find((item) => { | ||
| 567 | return item.dcode == e; | ||
| 568 | }); | ||
| 569 | this.ruleForm.nydsyq.yzyfsmc = itemLx.dname; | ||
| 570 | }, | ||
| 571 | /** | ||
| 572 | * @description: 用地用海变化事件 | ||
| 573 | * @param {*} e | ||
| 574 | * @author: renchao | ||
| 575 | */ | ||
| 576 | changeYdyhfl (e) { | ||
| 577 | let itemLx = {}; | ||
| 578 | itemLx = this.dictData["A51"].find((item) => { | ||
| 579 | return item.dcode == e; | ||
| 580 | }); | ||
| 581 | this.ruleForm.nydsyq.ydyhflmc = itemLx.dname; | ||
| 582 | }, | ||
| 583 | }, | ||
| 584 | }; | ||
| 585 | </script> | ||
| 586 | <style scoped lang="scss"> | ||
| 587 | @import "~@/styles/public.scss"; | ||
| 588 | @import "~@/styles/slxx/slxx.scss"; | ||
| 589 | </style> |
| 1 | <template> | ||
| 2 | <!-- 受理信息 --> | ||
| 3 | <div class="slxx"> | ||
| 4 | <el-form | ||
| 5 | :model="ruleForm" | ||
| 6 | :rules="rules" | ||
| 7 | v-Loading="loading" | ||
| 8 | ref="ruleForm" | ||
| 9 | :label-position="flag ? 'top' : ''" | ||
| 10 | :inline="flag" | ||
| 11 | label-width="120px"> | ||
| 12 | <div class="slxx_con" :class="flag ? 'formMarginBot0' : ''"> | ||
| 13 | <div class="slxx_title title-block"> | ||
| 14 | 申请业务信息 | ||
| 15 | <div class="triangle"></div> | ||
| 16 | </div> | ||
| 17 | <el-row :gutter="10"> | ||
| 18 | <el-col :span="8"> | ||
| 19 | <el-form-item label="业务号:"> | ||
| 20 | <el-input disabled v-model="ruleForm.flow.ywh"></el-input> | ||
| 21 | </el-form-item> | ||
| 22 | </el-col> | ||
| 23 | <el-col :span="8"> | ||
| 24 | <el-form-item label="受理人员:"> | ||
| 25 | <el-input disabled v-model="ruleForm.slsq.slry"></el-input> | ||
| 26 | </el-form-item> | ||
| 27 | </el-col> | ||
| 28 | <el-col :span="8"> | ||
| 29 | <el-form-item label="受理时间:"> | ||
| 30 | <el-input disabled v-model="ruleForm.slsq.slsj"></el-input> | ||
| 31 | </el-form-item> | ||
| 32 | </el-col> | ||
| 33 | </el-row> | ||
| 34 | <el-row :gutter="10"> | ||
| 35 | <el-col :span="8"> | ||
| 36 | <el-form-item label="权利类型:"> | ||
| 37 | <el-input disabled v-model="ruleForm.sldy.qllxmc"></el-input> | ||
| 38 | </el-form-item> | ||
| 39 | </el-col> | ||
| 40 | <el-col :span="8"> | ||
| 41 | <el-form-item label="登记类型:"> | ||
| 42 | <el-input disabled v-model="ruleForm.sldy.djlxmc"></el-input> | ||
| 43 | </el-form-item> | ||
| 44 | </el-col> | ||
| 45 | <el-col :span="8"> | ||
| 46 | <el-form-item label="登记情形:"> | ||
| 47 | <el-input disabled v-model="ruleForm.slsq.djqxmc"></el-input> | ||
| 48 | </el-form-item> | ||
| 49 | </el-col> | ||
| 50 | </el-row> | ||
| 51 | <div class="slxx_title title-block"> | ||
| 52 | <el-row> | ||
| 53 | <el-col :span="20"> | ||
| 54 | 不动产单元情况 | ||
| 55 | </el-col> | ||
| 56 | <el-col :span="4" v-if="ruleForm.sldy.djlx=='500'"> | ||
| 57 | <el-form-item label="是否创建证书:" style="height:24px"> | ||
| 58 | <el-radio-group v-model="ruleForm.sldy.sfxysczs"> | ||
| 59 | <el-radio label="1">是</el-radio> | ||
| 60 | <el-radio label="0">否</el-radio> | ||
| 61 | </el-radio-group> | ||
| 62 | </el-form-item> | ||
| 63 | </el-col> | ||
| 64 | </el-row> | ||
| 65 | <div class="triangle"></div> | ||
| 66 | </div> | ||
| 67 | <el-row :gutter="10"> | ||
| 68 | <el-col :span="8"> | ||
| 69 | <el-form-item label="宗地代码:"> | ||
| 70 | <el-input disabled v-model="ruleForm.zdjbxx.zddm"></el-input> | ||
| 71 | </el-form-item> | ||
| 72 | </el-col> | ||
| 73 | <el-col :span="8"> | ||
| 74 | <el-form-item label="不动产单元号:"> | ||
| 75 | <el-input disabled v-model="ruleForm.zdjbxx.bdcdyh"></el-input> | ||
| 76 | </el-form-item> | ||
| 77 | </el-col> | ||
| 78 | <el-col :span="8"> | ||
| 79 | <el-form-item label="权利性质:"> | ||
| 80 | <el-input disabled v-model="ruleForm.zdjbxx.qlxzmc"></el-input> | ||
| 81 | </el-form-item> | ||
| 82 | </el-col> | ||
| 83 | </el-row> | ||
| 84 | <el-row :gutter="10"> | ||
| 85 | <el-col :span="8"> | ||
| 86 | <el-form-item label="宗地面积:"> | ||
| 87 | <el-input disabled v-model="ruleForm.zdjbxx.zdmj"></el-input> | ||
| 88 | </el-form-item> | ||
| 89 | </el-col> | ||
| 90 | <el-col :span="8"> | ||
| 91 | <el-form-item label="土地用途:"> | ||
| 92 | <el-input disabled v-model="ruleForm.zdjbxx.ghytmc"></el-input> | ||
| 93 | </el-form-item> | ||
| 94 | </el-col> | ||
| 95 | <el-col :span="8"> | ||
| 96 | <el-form-item label="权利设定方式:"> | ||
| 97 | <el-input disabled v-model="ruleForm.zdjbxx.qlsdfsmc"></el-input> | ||
| 98 | </el-form-item> | ||
| 99 | </el-col> | ||
| 100 | </el-row> | ||
| 101 | <el-row :gutter="10"> | ||
| 102 | <el-col :span="16"> | ||
| 103 | <el-form-item label="坐落:"> | ||
| 104 | <el-input disabled v-model="ruleForm.sldy.zl"></el-input> | ||
| 105 | </el-form-item> | ||
| 106 | </el-col> | ||
| 107 | </el-row> | ||
| 108 | <el-row :gutter="10"> | ||
| 109 | <el-col :span="8"> | ||
| 110 | <el-form-item label="发包方名称:"> | ||
| 111 | <el-input | ||
| 112 | v-model="ruleForm.nydsyq.fbfmc" | ||
| 113 | :disabled="!viewEdit"></el-input> | ||
| 114 | </el-form-item> | ||
| 115 | </el-col> | ||
| 116 | <el-col :span="8"> | ||
| 117 | <el-form-item label="发包方代码:"> | ||
| 118 | <el-input | ||
| 119 | v-model="ruleForm.nydsyq.fbfdm" | ||
| 120 | :disabled="!viewEdit"></el-input> | ||
| 121 | </el-form-item> | ||
| 122 | </el-col> | ||
| 123 | <el-col :span="8"> | ||
| 124 | <el-form-item label="土地所有权性质:"> | ||
| 125 | <el-select | ||
| 126 | v-model="ruleForm.nydsyq.tdsyqxzmc" | ||
| 127 | class="width100" | ||
| 128 | :disabled="!viewEdit" | ||
| 129 | filterable | ||
| 130 | clearable> | ||
| 131 | <el-option | ||
| 132 | v-for="item in dictData['A45']" | ||
| 133 | :key="item.dname" | ||
| 134 | :label="item.dname" | ||
| 135 | :value="item.dname"> | ||
| 136 | </el-option> | ||
| 137 | </el-select> | ||
| 138 | </el-form-item> | ||
| 139 | </el-col> | ||
| 140 | </el-row> | ||
| 141 | <el-row :gutter="10"> | ||
| 142 | <el-col :span="8"> | ||
| 143 | <el-form-item label="承包期限:"> | ||
| 144 | <el-input disabled v-model="ruleForm.nydsyq.cbqx"></el-input> | ||
| 145 | </el-form-item> | ||
| 146 | </el-col> | ||
| 147 | <el-col :span="16"> | ||
| 148 | <el-form-item label="承包起止时间:"> | ||
| 149 | <el-input disabled v-model="ruleForm.nydsyq.cbqzsj"></el-input> | ||
| 150 | </el-form-item> | ||
| 151 | </el-col> | ||
| 152 | </el-row> | ||
| 153 | <el-row :gutter="10"> | ||
| 154 | <el-col :span="8"> | ||
| 155 | <el-form-item label="水域滩涂类型:"> | ||
| 156 | <el-select | ||
| 157 | v-model="ruleForm.nydsyq.syttlx" | ||
| 158 | :disabled="!viewEdit" | ||
| 159 | class="width100" | ||
| 160 | filterable | ||
| 161 | clearable | ||
| 162 | @change="changeSyttlx"> | ||
| 163 | <el-option | ||
| 164 | v-for="item in dictData['A23']" | ||
| 165 | :key="item.dcode" | ||
| 166 | :label="item.dname" | ||
| 167 | :value="item.dcode"> | ||
| 168 | </el-option> | ||
| 169 | </el-select> | ||
| 170 | </el-form-item> | ||
| 171 | </el-col> | ||
| 172 | <el-col :span="8"> | ||
| 173 | <el-form-item label="养殖业方式:"> | ||
| 174 | <el-select | ||
| 175 | v-model="ruleForm.nydsyq.yzyfs" | ||
| 176 | :disabled="!viewEdit" | ||
| 177 | class="width100" | ||
| 178 | filterable | ||
| 179 | clearable | ||
| 180 | @change="changeYzyfs"> | ||
| 181 | <el-option | ||
| 182 | v-for="item in dictData['A24']" | ||
| 183 | :key="item.dcode" | ||
| 184 | :label="item.dname" | ||
| 185 | :value="item.dcode"> | ||
| 186 | </el-option> | ||
| 187 | </el-select> | ||
| 188 | </el-form-item> | ||
| 189 | </el-col> | ||
| 190 | <el-col :span="8"> | ||
| 191 | <el-form-item label="草原质量:"> | ||
| 192 | <el-input | ||
| 193 | v-model="ruleForm.nydsyq.cyzl" | ||
| 194 | :disabled="!viewEdit"></el-input> | ||
| 195 | </el-form-item> | ||
| 196 | </el-col> | ||
| 197 | </el-row> | ||
| 198 | <el-row :gutter="10"> | ||
| 199 | <el-col :span="8"> | ||
| 200 | <el-form-item label="适宜载畜量:"> | ||
| 201 | <el-input | ||
| 202 | v-model="ruleForm.nydsyq.syzcl" | ||
| 203 | :disabled="!viewEdit" | ||
| 204 | oninput="value=value.replace(/[^\d.]/g,'')"></el-input> | ||
| 205 | </el-form-item> | ||
| 206 | </el-col> | ||
| 207 | <el-col :span="8"> | ||
| 208 | <el-form-item label="用地用海分类:"> | ||
| 209 | <el-select | ||
| 210 | v-model="ruleForm.nydsyq.ydyhfl" | ||
| 211 | :disabled="!viewEdit" | ||
| 212 | class="width100" | ||
| 213 | filterable | ||
| 214 | clearable | ||
| 215 | @change="changeYdyhfl"> | ||
| 216 | <el-option | ||
| 217 | v-for="item in dictData['A51']" | ||
| 218 | :key="item.dcode" | ||
| 219 | :label="item.dname" | ||
| 220 | :value="item.dcode"> | ||
| 221 | </el-option> | ||
| 222 | </el-select> | ||
| 223 | </el-form-item> | ||
| 224 | </el-col> | ||
| 225 | <el-col :span="8"> | ||
| 226 | <el-form-item label="土地承包合同:"> | ||
| 227 | <el-input | ||
| 228 | v-model="ruleForm.nydsyq.tdcbht" | ||
| 229 | :disabled="!viewEdit"></el-input> | ||
| 230 | </el-form-item> | ||
| 231 | </el-col> | ||
| 232 | </el-row> | ||
| 233 | <el-row :gutter="10"> | ||
| 234 | <el-col> | ||
| 235 | <el-form-item label="附记:" prop="fj"> | ||
| 236 | <el-input | ||
| 237 | type="textarea" | ||
| 238 | maxlength="500" | ||
| 239 | show-word-limit | ||
| 240 | v-model="ruleForm.nydsyq.fj" | ||
| 241 | :disabled="!viewEdit"></el-input> | ||
| 242 | </el-form-item> | ||
| 243 | </el-col> | ||
| 244 | </el-row> | ||
| 245 | <div class="slxx_title title-block"> | ||
| 246 | 权利人信息 | ||
| 247 | <div class="triangle"></div> | ||
| 248 | </div> | ||
| 249 | <el-row :gutter="10"> | ||
| 250 | <el-col :span="12"> | ||
| 251 | <el-form-item label="共有方式:"> | ||
| 252 | <el-radio-group | ||
| 253 | :disabled="!viewEdit" | ||
| 254 | v-model="ruleForm.sldy.gyfs"> | ||
| 255 | <el-radio label="0">单独所有</el-radio> | ||
| 256 | <el-radio label="1">共同共有</el-radio> | ||
| 257 | <el-radio label="2">按份所有</el-radio> | ||
| 258 | <el-radio label="3">其它共有</el-radio> | ||
| 259 | </el-radio-group> | ||
| 260 | </el-form-item> | ||
| 261 | </el-col> | ||
| 262 | <el-col :span="6" v-show="ruleForm.sldy.gyfs != '0'"> | ||
| 263 | <el-form-item label="是否分别持证:"> | ||
| 264 | <el-radio-group | ||
| 265 | v-model="ruleForm.sldy.sqfbcz" | ||
| 266 | :disabled="!viewEdit" | ||
| 267 | @input="updaterow()"> | ||
| 268 | <el-radio :label="1">是</el-radio> | ||
| 269 | <el-radio :label="0">否</el-radio> | ||
| 270 | </el-radio-group> | ||
| 271 | </el-form-item> | ||
| 272 | </el-col> | ||
| 273 | <el-col | ||
| 274 | :span="6" | ||
| 275 | v-show="ruleForm.sldy.sqfbcz == '0' && ruleForm.sldy.gyfs != '0'"> | ||
| 276 | <el-form-item label="持证人:"> | ||
| 277 | <el-select | ||
| 278 | v-model="czr" | ||
| 279 | placeholder="持证人" | ||
| 280 | :disabled="!viewEdit"> | ||
| 281 | <el-option | ||
| 282 | v-for="(item,index) in czrOptions" | ||
| 283 | :key="index" | ||
| 284 | :label="item.sqrmc" | ||
| 285 | :value="item.id"> | ||
| 286 | </el-option> | ||
| 287 | </el-select> | ||
| 288 | </el-form-item> | ||
| 289 | </el-col> | ||
| 290 | </el-row> | ||
| 291 | <qlrCommonTable | ||
| 292 | :tableData="ruleForm.qlrList" | ||
| 293 | @upDateQlrxxList="upDateQlrxxList" | ||
| 294 | :disabled="viewEdit" | ||
| 295 | :gyfs="ruleForm.sldy.gyfs" /> | ||
| 296 | <div class="slxx_title title-block"> | ||
| 297 | 义务人信息 | ||
| 298 | <div class="triangle"></div> | ||
| 299 | </div> | ||
| 300 | <ywrCommonTable | ||
| 301 | :tableData="ruleForm.ywrList" | ||
| 302 | @upDateQlrxxList="upDateYwrxxList" | ||
| 303 | :disabled="viewEdit" /> | ||
| 304 | <div class="slxx_title title-block"> | ||
| 305 | 家庭成员 | ||
| 306 | <div class="triangle"></div> | ||
| 307 | </div> | ||
| 308 | <JtcyTable | ||
| 309 | :tableData="ruleForm.jtcyList" | ||
| 310 | :disabled="!viewEdit" | ||
| 311 | @upDateJtcyList="upDateJtcyList" | ||
| 312 | :gyfs="ruleForm.slywxx.gyfs" /> | ||
| 313 | <div class="slxx_title title-block"> | ||
| 314 | 登记原因 | ||
| 315 | <div class="triangle"></div> | ||
| 316 | </div> | ||
| 317 | <el-row :gutter="10"> | ||
| 318 | <el-col> | ||
| 319 | <el-form-item label="登记原因:" prop="nydsyq.djyy"> | ||
| 320 | <el-input | ||
| 321 | class="textArea" | ||
| 322 | type="textarea" | ||
| 323 | maxlength="500" | ||
| 324 | show-word-limit | ||
| 325 | :disabled="!viewEdit" | ||
| 326 | v-model="ruleForm.nydsyq.djyy"> | ||
| 327 | </el-input> | ||
| 328 | </el-form-item> | ||
| 329 | </el-col> | ||
| 330 | </el-row> | ||
| 331 | </div> | ||
| 332 | <el-row class="btn" v-if="isSave"> | ||
| 333 | <el-form-item> | ||
| 334 | <el-button type="primary" @click="onSubmit">保存</el-button> | ||
| 335 | </el-form-item> | ||
| 336 | </el-row> | ||
| 337 | </el-form> | ||
| 338 | </div> | ||
| 339 | </template> | ||
| 340 | <script> | ||
| 341 | import { mapGetters } from "vuex"; | ||
| 342 | import ywmix from "@/views/ywbl/mixin/index"; | ||
| 343 | import { Init, saveData } from "@/api/workflow/nydsyqFlow.js"; | ||
| 344 | import qlrCommonTable from "@/views/workflow/components/qlrCommonTable"; | ||
| 345 | import ywrCommonTable from "@/views/workflow/components/ywrCommonTable"; | ||
| 346 | import JtcyTable from "@/views/workflow/components/JtcyTable"; | ||
| 347 | export default { | ||
| 348 | mixins: [ywmix], | ||
| 349 | mounted () { | ||
| 350 | let that = this | ||
| 351 | this.viewEdit = this.$parent.currentSelectTab.ableOperation; | ||
| 352 | this.propsParam = this.$attrs; | ||
| 353 | var formdata = new FormData(); | ||
| 354 | this.loading = true | ||
| 355 | formdata.append("bsmSldy", this.propsParam.bsmSldy); | ||
| 356 | formdata.append("djlx", this.propsParam.djlx); | ||
| 357 | formdata.append("isEdit", this.viewEdit); | ||
| 358 | Init(formdata).then((res) => { | ||
| 359 | setTimeout(() => { | ||
| 360 | that.loading = false | ||
| 361 | }, 200) | ||
| 362 | if (res.code === 200) { | ||
| 363 | that.ruleForm = res.result; | ||
| 364 | that.ruleForm.qlrList.forEach((item) => { | ||
| 365 | item.id = item.bsmSqr | ||
| 366 | if (item.sfczr == '1') { | ||
| 367 | that.czr = item.bsmSqr | ||
| 368 | } | ||
| 369 | }) | ||
| 370 | that.czrOptions = that.ruleForm.qlrList | ||
| 371 | that.isSave = that.viewEdit | ||
| 372 | } else { | ||
| 373 | that.isSave = false | ||
| 374 | that.$confirm(res.message, '提示', { | ||
| 375 | cancelButtonText: '取消', | ||
| 376 | showConfirmButton: false, | ||
| 377 | type: 'warning' | ||
| 378 | }) | ||
| 379 | } | ||
| 380 | }).catch(() => { | ||
| 381 | this.loading = false | ||
| 382 | this.isSave = false | ||
| 383 | }) | ||
| 384 | }, | ||
| 385 | components: { qlrCommonTable, JtcyTable, ywrCommonTable }, | ||
| 386 | computed: { | ||
| 387 | ...mapGetters(["dictData", "flag"]), | ||
| 388 | }, | ||
| 389 | data () { | ||
| 390 | return { | ||
| 391 | isSave: true, | ||
| 392 | loading: false, | ||
| 393 | // 键名转换,方法默认是label和children进行树状渲染 | ||
| 394 | normalizer (node) { | ||
| 395 | //方法 | ||
| 396 | if (node.children == null || node.children == "null") { | ||
| 397 | delete node.children; | ||
| 398 | } | ||
| 399 | return { | ||
| 400 | id: node.dcode, | ||
| 401 | label: node.dname, | ||
| 402 | }; | ||
| 403 | }, | ||
| 404 | //表单是否可操作 | ||
| 405 | viewEdit: true, | ||
| 406 | disabled: true, | ||
| 407 | czrOptions: [], | ||
| 408 | czr: "", | ||
| 409 | ruleForm: {}, | ||
| 410 | //传递参数 | ||
| 411 | propsParam: {}, | ||
| 412 | rules: { | ||
| 413 | 'nydsyq.djyy': [ | ||
| 414 | { required: true, message: '请输入登记原因', trigger: 'blur' } | ||
| 415 | ] | ||
| 416 | } | ||
| 417 | } | ||
| 418 | }, | ||
| 419 | methods: { | ||
| 420 | /** | ||
| 421 | * @description: onSubmit | ||
| 422 | * @author: renchao | ||
| 423 | */ | ||
| 424 | onSubmit () { | ||
| 425 | let that = this; | ||
| 426 | if (this.ruleForm.qlrList.length == 0) { | ||
| 427 | this.$message({ | ||
| 428 | showClose: true, | ||
| 429 | message: "请确认权利人信息", | ||
| 430 | type: "error", | ||
| 431 | }); | ||
| 432 | return false; | ||
| 433 | } | ||
| 434 | |||
| 435 | if (this.ruleForm.sldy.gyfs == "0") { | ||
| 436 | if (this.ruleForm.qlrList.length > 1) { | ||
| 437 | this.$message({ | ||
| 438 | showClose: true, | ||
| 439 | message: "共有方式:单独所有,权利人只能是一个人", | ||
| 440 | type: "error", | ||
| 441 | }); | ||
| 442 | return false; | ||
| 443 | } | ||
| 444 | this.ruleForm.qlrList[0].sfczr = "1"; | ||
| 445 | } else { | ||
| 446 | if (this.ruleForm.qlrList.length <= 1) { | ||
| 447 | this.$message({ | ||
| 448 | showClose: true, | ||
| 449 | message: | ||
| 450 | "共有方式:共同所有,按份所有,其他所有,权利人必须是两个以上", | ||
| 451 | type: "error", | ||
| 452 | }); | ||
| 453 | return false; | ||
| 454 | } | ||
| 455 | //是否分别持证 | ||
| 456 | if (this.ruleForm.sldy.sqfbcz == "1") { | ||
| 457 | //是 | ||
| 458 | this.ruleForm.qlrList.forEach((item, index) => { | ||
| 459 | item.sfczr = "1"; | ||
| 460 | }); | ||
| 461 | } else { | ||
| 462 | if (that.czr === '') { | ||
| 463 | that.$message({ | ||
| 464 | showClose: true, | ||
| 465 | message: "请选择持证人", | ||
| 466 | type: "error" | ||
| 467 | }); | ||
| 468 | return false; | ||
| 469 | } | ||
| 470 | this.ruleForm.qlrList.forEach((item, index) => { | ||
| 471 | if (item.id == that.czr) { | ||
| 472 | item.sfczr = "1" | ||
| 473 | } else { | ||
| 474 | item.sfczr = "0" | ||
| 475 | } | ||
| 476 | }) | ||
| 477 | } | ||
| 478 | } | ||
| 479 | this.$refs['ruleForm'].validate((valid) => { | ||
| 480 | if (valid) { | ||
| 481 | that.$store.dispatch("user/refreshPage", false); | ||
| 482 | saveData(that.ruleForm).then((res) => { | ||
| 483 | if (res.code === 200) { | ||
| 484 | that.$message({ | ||
| 485 | showClose: true, | ||
| 486 | message: "保存成功!", | ||
| 487 | type: "success", | ||
| 488 | }); | ||
| 489 | that.$store.dispatch("user/refreshPage", true); | ||
| 490 | } else { | ||
| 491 | that.$message({ | ||
| 492 | showClose: true, | ||
| 493 | message: res.message, | ||
| 494 | type: "error", | ||
| 495 | }); | ||
| 496 | } | ||
| 497 | }) | ||
| 498 | } else { | ||
| 499 | this.$message({ | ||
| 500 | showClose: true, | ||
| 501 | message: "请输入登记原因", | ||
| 502 | type: "error" | ||
| 503 | }) | ||
| 504 | return false | ||
| 505 | } | ||
| 506 | }) | ||
| 507 | }, | ||
| 508 | /** | ||
| 509 | * @description: 权利人更新 | ||
| 510 | * @param {*} val | ||
| 511 | * @author: renchao | ||
| 512 | */ | ||
| 513 | upDateQlrxxList (val) { | ||
| 514 | this.ruleForm.qlrList = _.cloneDeep(val); | ||
| 515 | this.czrOptions = this.ruleForm.qlrList; | ||
| 516 | this.num = 0 | ||
| 517 | this.ruleForm.qlrList.forEach(item => { | ||
| 518 | if (item.id == this.czr) { | ||
| 519 | this.num++ | ||
| 520 | } | ||
| 521 | }) | ||
| 522 | if (this.num == 0) { | ||
| 523 | this.czr = '' | ||
| 524 | } | ||
| 525 | }, | ||
| 526 | /** | ||
| 527 | * @description: 是否持证人变化 | ||
| 528 | * @param {*} val | ||
| 529 | * @author: renchao | ||
| 530 | */ | ||
| 531 | updaterow () { | ||
| 532 | this.czr = ""; | ||
| 533 | }, | ||
| 534 | /** | ||
| 535 | * @description: 更新义务人信息 | ||
| 536 | * @param {*} val | ||
| 537 | * @author: renchao | ||
| 538 | */ | ||
| 539 | upDateYwrxxList (val) { | ||
| 540 | this.ruleForm.ywrList = _.cloneDeep(val); | ||
| 541 | }, | ||
| 542 | //家庭成员更新 | ||
| 543 | /** | ||
| 544 | * @description: 家庭成员更新 | ||
| 545 | * @param {*} val | ||
| 546 | * @author: renchao | ||
| 547 | */ | ||
| 548 | upDateJtcyList (val) { | ||
| 549 | this.ruleForm.jtcyList = _.cloneDeep(val); | ||
| 550 | }, | ||
| 551 | //水域滩涂类型变化事件 | ||
| 552 | /** | ||
| 553 | * @description: 水域滩涂类型变化事件 | ||
| 554 | * @param {*} e | ||
| 555 | * @author: renchao | ||
| 556 | */ | ||
| 557 | changeSyttlx (e) { | ||
| 558 | let itemLx = {}; | ||
| 559 | itemLx = this.dictData["A23"].find((item) => { | ||
| 560 | return item.dcode == e; | ||
| 561 | }); | ||
| 562 | this.ruleForm.nydsyq.syttlxmc = itemLx.dname; | ||
| 563 | }, | ||
| 564 | //养殖业方式变化事件 | ||
| 565 | /** | ||
| 566 | * @description: 养殖业方式变化事件 | ||
| 567 | * @param {*} e | ||
| 568 | * @author: renchao | ||
| 569 | */ | ||
| 570 | changeYzyfs (e) { | ||
| 571 | let itemLx = {}; | ||
| 572 | itemLx = this.dictData["A24"].find((item) => { | ||
| 573 | return item.dcode == e; | ||
| 574 | }); | ||
| 575 | this.ruleForm.nydsyq.yzyfsmc = itemLx.dname; | ||
| 576 | }, | ||
| 577 | //用地用海变化事件 | ||
| 578 | /** | ||
| 579 | * @description: 用地用海变化事件 | ||
| 580 | * @param {*} e | ||
| 581 | * @author: renchao | ||
| 582 | */ | ||
| 583 | changeYdyhfl (e) { | ||
| 584 | let itemLx = {}; | ||
| 585 | itemLx = this.dictData["A51"].find((item) => { | ||
| 586 | return item.dcode == e; | ||
| 587 | }); | ||
| 588 | this.ruleForm.nydsyq.ydyhflmc = itemLx.dname; | ||
| 589 | }, | ||
| 590 | }, | ||
| 591 | }; | ||
| 592 | </script> | ||
| 593 | <style scoped lang="scss"> | ||
| 594 | @import "~@/styles/public.scss"; | ||
| 595 | @import "~@/styles/slxx/slxx.scss"; | ||
| 596 | </style> |
| 1 | <!-- | ||
| 2 | * @Description: 房屋多幢受理信息 | ||
| 3 | * @Autor: ssq | ||
| 4 | * @LastEditTime: 2024-01-31 10:17:15 | ||
| 5 | --> | ||
| 6 | <template> | ||
| 7 | <div class="slxx"> | ||
| 8 | <el-form | ||
| 9 | :model="ruleForm" | ||
| 10 | :rules="rules" | ||
| 11 | ref="ruleForm" | ||
| 12 | v-Loading="loading" | ||
| 13 | :label-position="flag ? 'top' : ''" | ||
| 14 | :inline="flag" | ||
| 15 | label-width="190px"> | ||
| 16 | <div class="slxx_con" :class="flag ? 'formMarginBot0' : ''"> | ||
| 17 | <div class="slxx_title title-block"> | ||
| 18 | 申请业务信息 | ||
| 19 | <div class="triangle"></div> | ||
| 20 | </div> | ||
| 21 | <el-row :gutter="10" v-if="ruleForm.slsq"> | ||
| 22 | <el-col :span="8"> | ||
| 23 | <el-form-item label="业务号:"> | ||
| 24 | <el-input disabled v-model="ruleForm.flow.ywh"></el-input> | ||
| 25 | </el-form-item> | ||
| 26 | </el-col> | ||
| 27 | <el-col :span="8"> | ||
| 28 | <el-form-item label="受理人员:"> | ||
| 29 | <el-input disabled v-model="ruleForm.slsq.slry"></el-input> | ||
| 30 | </el-form-item> | ||
| 31 | </el-col> | ||
| 32 | <el-col :span="8"> | ||
| 33 | <el-form-item label="受理时间:"> | ||
| 34 | <el-input disabled v-model="ruleForm.slsq.slsj"></el-input> | ||
| 35 | </el-form-item> | ||
| 36 | </el-col> | ||
| 37 | </el-row> | ||
| 38 | <el-row :gutter="10" v-if="ruleForm.slsq"> | ||
| 39 | <el-col :span="8"> | ||
| 40 | <el-form-item label="权利类型:"> | ||
| 41 | <el-input disabled v-model="ruleForm.sldy.qllxmc"></el-input> | ||
| 42 | </el-form-item> | ||
| 43 | </el-col> | ||
| 44 | <el-col :span="8"> | ||
| 45 | <el-form-item label="登记类型:"> | ||
| 46 | <el-input disabled v-model="ruleForm.sldy.djlxmc"></el-input> | ||
| 47 | </el-form-item> | ||
| 48 | </el-col> | ||
| 49 | <el-col :span="8"> | ||
| 50 | <el-form-item label="登记情形:"> | ||
| 51 | <el-input disabled v-model="ruleForm.slsq.djqxmc"></el-input> | ||
| 52 | </el-form-item> | ||
| 53 | </el-col> | ||
| 54 | </el-row> | ||
| 55 | <div class="slxx_title title-block"> | ||
| 56 | <el-row> | ||
| 57 | <el-col :span="20"> | ||
| 58 | 不动产单元情况 | ||
| 59 | </el-col> | ||
| 60 | <el-col :span="4" v-if="ruleForm.sldy.djlx=='500'"> | ||
| 61 | <el-form-item label="是否创建证书:" style="height:24px"> | ||
| 62 | <el-radio-group v-model="ruleForm.sldy.sfxysczs"> | ||
| 63 | <el-radio label="1">是</el-radio> | ||
| 64 | <el-radio label="0">否</el-radio> | ||
| 65 | </el-radio-group> | ||
| 66 | </el-form-item> | ||
| 67 | </el-col> | ||
| 68 | </el-row> | ||
| 69 | <div class="triangle"></div> | ||
| 70 | </div> | ||
| 71 | <el-row :gutter="10" v-if="ruleForm.qlxx"> | ||
| 72 | <el-col :span="8"> | ||
| 73 | <el-form-item label="不动产单元号:"> | ||
| 74 | <el-input disabled v-model="ruleForm.qlxx.bdcdyh"></el-input> | ||
| 75 | </el-form-item> | ||
| 76 | </el-col> | ||
| 77 | <el-col :span="16"> | ||
| 78 | <el-form-item label="坐落:"> | ||
| 79 | <el-input disabled v-model="ruleForm.sldy.zl"></el-input> | ||
| 80 | </el-form-item> | ||
| 81 | </el-col> | ||
| 82 | </el-row> | ||
| 83 | <el-row :gutter="10"> | ||
| 84 | <el-col :span="8"> | ||
| 85 | <el-form-item label="发包方:"> | ||
| 86 | <el-input v-model="ruleForm.lq.fbf" :disabled="!viewEdit"></el-input> | ||
| 87 | </el-form-item> | ||
| 88 | </el-col> | ||
| 89 | <el-col :span="8"> | ||
| 90 | <el-form-item label="发包方代码:"> | ||
| 91 | <el-input v-model="ruleForm.lq.fbfdm" :disabled="!viewEdit"></el-input> | ||
| 92 | </el-form-item> | ||
| 93 | </el-col> | ||
| 94 | <el-col :span="8"> | ||
| 95 | <el-form-item label="使用权(承包)面积:"> | ||
| 96 | <el-input maxlength="12" v-model="ruleForm.lq.syqmj" :disabled="!viewEdit"></el-input> | ||
| 97 | </el-form-item> | ||
| 98 | </el-col> | ||
| 99 | </el-row> | ||
| 100 | <el-row :gutter="10"> | ||
| 101 | <el-col :span="8"> | ||
| 102 | <el-form-item label="林地所有权性质:"> | ||
| 103 | <el-select v-model="ruleForm.lq.ldsyqxz" :disabled="!viewEdit"> | ||
| 104 | <el-option | ||
| 105 | v-for="item in dictData['A45']" | ||
| 106 | :key="item.dcode" | ||
| 107 | :label="item.dname" | ||
| 108 | :value="item.dcode"> | ||
| 109 | </el-option> | ||
| 110 | </el-select> | ||
| 111 | </el-form-item> | ||
| 112 | </el-col> | ||
| 113 | <el-col :span="8"> | ||
| 114 | <el-form-item label="森林类别:"> | ||
| 115 | <el-input v-model="ruleForm.lq.sllb" :disabled="!viewEdit"></el-input> | ||
| 116 | </el-form-item> | ||
| 117 | </el-col> | ||
| 118 | <el-col :span="8"> | ||
| 119 | <el-form-item label="主要树种:"> | ||
| 120 | <el-input v-model="ruleForm.lq.zysz" :disabled="!viewEdit"></el-input> | ||
| 121 | </el-form-item> | ||
| 122 | </el-col> | ||
| 123 | </el-row> | ||
| 124 | <el-row :gutter="10"> | ||
| 125 | <el-col :span="8"> | ||
| 126 | <el-form-item label="株数:"> | ||
| 127 | <el-input v-model="ruleForm.lq.zs" :disabled="!viewEdit"></el-input> | ||
| 128 | </el-form-item> | ||
| 129 | </el-col> | ||
| 130 | <el-col :span="8"> | ||
| 131 | <el-form-item label="林种:"> | ||
| 132 | <el-select v-model="ruleForm.lq.lz" :disabled="!viewEdit"> | ||
| 133 | <el-option | ||
| 134 | v-for="item in dictData['A26']" | ||
| 135 | :key="item.dcode" | ||
| 136 | :label="item.dname" | ||
| 137 | :value="item.dcode"> | ||
| 138 | </el-option> | ||
| 139 | </el-select> | ||
| 140 | </el-form-item> | ||
| 141 | </el-col> | ||
| 142 | <el-col :span="8"> | ||
| 143 | <el-form-item label="起源:"> | ||
| 144 | <el-select v-model="ruleForm.lq.qy" :disabled="!viewEdit"> | ||
| 145 | <el-option | ||
| 146 | v-for="item in dictData['A52']" | ||
| 147 | :key="item.dcode" | ||
| 148 | :label="item.dname" | ||
| 149 | :value="item.dcode"> | ||
| 150 | </el-option> | ||
| 151 | </el-select> | ||
| 152 | </el-form-item> | ||
| 153 | </el-col> | ||
| 154 | </el-row> | ||
| 155 | <el-row :gutter="10"> | ||
| 156 | <el-col :span="8"> | ||
| 157 | <el-form-item label="造林年度:"> | ||
| 158 | <!-- <el-input v-model="ruleForm.lq.zlnd"></el-input> --> | ||
| 159 | <el-date-picker | ||
| 160 | class="width100" | ||
| 161 | value-format="yyyy" | ||
| 162 | v-model="ruleForm.lq.zlnd" | ||
| 163 | :disabled="!viewEdit" | ||
| 164 | type="year"> | ||
| 165 | </el-date-picker> | ||
| 166 | </el-form-item> | ||
| 167 | </el-col> | ||
| 168 | <el-col :span="8"> | ||
| 169 | <el-form-item label="林班:"> | ||
| 170 | <el-input v-model="ruleForm.lq.lb" :disabled="!viewEdit"></el-input> | ||
| 171 | </el-form-item> | ||
| 172 | </el-col> | ||
| 173 | <el-col :span="8"> | ||
| 174 | <el-form-item label="小班:"> | ||
| 175 | <el-input v-model="ruleForm.lq.xb" :disabled="!viewEdit"></el-input> | ||
| 176 | </el-form-item> | ||
| 177 | </el-col> | ||
| 178 | </el-row> | ||
| 179 | <el-row :gutter="10"> | ||
| 180 | <el-col :span="8"> | ||
| 181 | <el-form-item label="小地名:"> | ||
| 182 | <el-input v-model="ruleForm.lq.xdm" :disabled="!viewEdit"></el-input> | ||
| 183 | </el-form-item> | ||
| 184 | </el-col> | ||
| 185 | <el-col :span="8"> | ||
| 186 | <el-form-item label="林地使用(承包)起始时间:"> | ||
| 187 | <el-date-picker | ||
| 188 | class="width100" | ||
| 189 | value-format="yyyy-MM-dd HH:mm:ss" | ||
| 190 | v-model="ruleForm.lq.ldsyqssj" | ||
| 191 | :disabled="!viewEdit" | ||
| 192 | type="date"></el-date-picker> | ||
| 193 | </el-form-item> | ||
| 194 | </el-col> | ||
| 195 | <el-col :span="8"> | ||
| 196 | <el-form-item label="林地使用(承包)结束时间:"> | ||
| 197 | <el-date-picker | ||
| 198 | class="width100" | ||
| 199 | value-format="yyyy-MM-dd HH:mm:ss" | ||
| 200 | v-model="ruleForm.lq.ldsyjssj" | ||
| 201 | :disabled="!viewEdit" | ||
| 202 | type="date"></el-date-picker> | ||
| 203 | </el-form-item> | ||
| 204 | </el-col> | ||
| 205 | </el-row> | ||
| 206 | <el-row :gutter="10"> | ||
| 207 | <!-- <el-col :span="8"> | ||
| 208 | <el-form-item label="土地用途:"> | ||
| 209 | <el-input v-model="ruleForm.lq.xdm"></el-input> | ||
| 210 | </el-form-item> | ||
| 211 | </el-col> --> | ||
| 212 | <el-col :span="8"> | ||
| 213 | <el-form-item label="林地使用 (承包)期限:"> | ||
| 214 | <el-input v-model="ruleForm.lq.ldsyqx" :disabled="!viewEdit"></el-input> | ||
| 215 | </el-form-item> | ||
| 216 | </el-col> | ||
| 217 | </el-row> | ||
| 218 | <el-row :gutter="10"> | ||
| 219 | <el-col :span="24"> | ||
| 220 | <el-form-item label="附记:"> | ||
| 221 | <el-input | ||
| 222 | v-model="ruleForm.lq.fj" | ||
| 223 | :disabled="!viewEdit" | ||
| 224 | type="textarea" | ||
| 225 | maxlength="500" | ||
| 226 | show-word-limit></el-input> | ||
| 227 | </el-form-item> | ||
| 228 | </el-col> | ||
| 229 | </el-row> | ||
| 230 | <!-- <div class="slxx_title title-block"> | ||
| 231 | 土地用途 | ||
| 232 | <div class="triangle"></div> | ||
| 233 | </div> --> | ||
| 234 | <!-- <tdytTable | ||
| 235 | :ableOperation="viewEdit" | ||
| 236 | :tableData="ruleForm.tdytqxList" | ||
| 237 | @upDateTdytxxList="upDateTdytxxList" /> --> | ||
| 238 | <div class="slxx_title title-block"> | ||
| 239 | 权利人信息 | ||
| 240 | <div class="triangle"></div> | ||
| 241 | </div> | ||
| 242 | <el-row :gutter="10"> | ||
| 243 | <el-col :span="12" v-if="ruleForm.qlxx"> | ||
| 244 | <el-form-item label="共有方式:"> | ||
| 245 | <el-radio-group | ||
| 246 | :disabled="!viewEdit" | ||
| 247 | v-model="ruleForm.sldy.gyfs"> | ||
| 248 | <el-radio label="0">单独所有</el-radio> | ||
| 249 | <el-radio label="1">共同共有</el-radio> | ||
| 250 | <el-radio label="2">按份所有</el-radio> | ||
| 251 | <el-radio label="3">其它共有</el-radio> | ||
| 252 | </el-radio-group> | ||
| 253 | </el-form-item> | ||
| 254 | </el-col> | ||
| 255 | <el-col :span="6" v-show="ruleForm.sldy.gyfs != '0'"> | ||
| 256 | <el-form-item label="是否分别持证:"> | ||
| 257 | <el-radio-group | ||
| 258 | v-model="ruleForm.sldy.sqfbcz" | ||
| 259 | :disabled="!viewEdit" | ||
| 260 | @input="updaterow()"> | ||
| 261 | <el-radio :label="1">是</el-radio> | ||
| 262 | <el-radio :label="0">否</el-radio> | ||
| 263 | </el-radio-group> | ||
| 264 | </el-form-item> | ||
| 265 | </el-col> | ||
| 266 | <el-col | ||
| 267 | :span="6" | ||
| 268 | v-show="ruleForm.sldy.sqfbcz == '0' && ruleForm.sldy.gyfs != '0'"> | ||
| 269 | <el-form-item label="持证人:"> | ||
| 270 | <el-select | ||
| 271 | v-model="czr" | ||
| 272 | placeholder="持证人" | ||
| 273 | :disabled="!viewEdit"> | ||
| 274 | <el-option | ||
| 275 | v-for="(item, index) in czrOptions" | ||
| 276 | :key="index" | ||
| 277 | :label="item.sqrmc" | ||
| 278 | :value="item.id"> | ||
| 279 | </el-option> | ||
| 280 | </el-select> | ||
| 281 | </el-form-item> | ||
| 282 | </el-col> | ||
| 283 | </el-row> | ||
| 284 | <qlrCommonTable | ||
| 285 | @upDateQlrxxList="upDateQlrxxList" | ||
| 286 | :tableData="ruleForm.qlrList" | ||
| 287 | :disabled="viewEdit" | ||
| 288 | :gyfs="ruleForm.sldy.gyfs" /> | ||
| 289 | |||
| 290 | <div v-if="ruleForm.ywrList && ruleForm.sldy.djlx == '200'"> | ||
| 291 | <div class="slxx_title title-block"> | ||
| 292 | 义务人信息 | ||
| 293 | <div class="triangle"></div> | ||
| 294 | </div> | ||
| 295 | <ywrCommonTable | ||
| 296 | v-if="ruleForm.qlxx" | ||
| 297 | :disabled="viewEdit" | ||
| 298 | @upDateQlrxxList="upDateYwrxxList" | ||
| 299 | :tableData="ruleForm.ywrList" | ||
| 300 | :gyfs="ruleForm.sldy.gyfs" /> | ||
| 301 | </div> | ||
| 302 | <div class="slxx_title title-block"> | ||
| 303 | 登记原因 | ||
| 304 | <div class="triangle"></div> | ||
| 305 | </div> | ||
| 306 | <el-row :gutter="10"> | ||
| 307 | <el-col> | ||
| 308 | <el-form-item v-if="ruleForm.sldy" label="登记原因:" prop="djyy"> | ||
| 309 | <el-input | ||
| 310 | class="textArea" | ||
| 311 | type="textarea" | ||
| 312 | maxlength="500" | ||
| 313 | show-word-limit | ||
| 314 | :disabled="!viewEdit" | ||
| 315 | v-model="ruleForm.lq.djyy"> | ||
| 316 | </el-input> | ||
| 317 | </el-form-item> | ||
| 318 | </el-col> | ||
| 319 | </el-row> | ||
| 320 | </div> | ||
| 321 | <el-row class="btn" v-if="isSave"> | ||
| 322 | <el-form-item> | ||
| 323 | <el-button type="primary" @click="onSubmit">保存</el-button> | ||
| 324 | </el-form-item> | ||
| 325 | </el-row> | ||
| 326 | </el-form> | ||
| 327 | </div> | ||
| 328 | </template> | ||
| 329 | <script> | ||
| 330 | import ywmix from "@/views/ywbl/mixin/index"; | ||
| 331 | import qlrCommonTable from "@/views/workflow/components/qlrCommonTable"; | ||
| 332 | import ywrCommonTable from "@/views/workflow/components/ywrCommonTable"; | ||
| 333 | import tdytTable from "@/views/workflow/components/tdytTable"; | ||
| 334 | import { Init, saveData } from "@/api/workflow/sllmFlow.js"; | ||
| 335 | import { mapGetters } from "vuex"; | ||
| 336 | export default { | ||
| 337 | mixins: [ywmix], | ||
| 338 | mounted () { | ||
| 339 | let that = this | ||
| 340 | this.viewEdit = this.$parent.currentSelectTab.ableOperation; | ||
| 341 | this.propsParam = this.$attrs; | ||
| 342 | var formdata = new FormData(); | ||
| 343 | this.loading = true | ||
| 344 | formdata.append("bsmSldy", this.propsParam.bsmSldy); | ||
| 345 | formdata.append("djlx", this.propsParam.djlx); | ||
| 346 | formdata.append("isEdit", this.viewEdit); | ||
| 347 | Init(formdata).then((res) => { | ||
| 348 | setTimeout(() => { | ||
| 349 | this.loading = false | ||
| 350 | }, 200) | ||
| 351 | if (res.code === 200 && res.result) { | ||
| 352 | this.ruleForm = { | ||
| 353 | ...res.result, | ||
| 354 | ...res.result.qlxxdatas, | ||
| 355 | }; | ||
| 356 | this.ruleForm.qlrList.forEach((item) => { | ||
| 357 | item.id = item.bsmSqr | ||
| 358 | if (item.sfczr == '1') { | ||
| 359 | that.czr = item.bsmSqr | ||
| 360 | } | ||
| 361 | }) | ||
| 362 | that.czrOptions = that.ruleForm.qlrList | ||
| 363 | that.isSave = that.viewEdit | ||
| 364 | } else { | ||
| 365 | that.isSave = false | ||
| 366 | that.$confirm(res.message, '提示', { | ||
| 367 | cancelButtonText: '取消', | ||
| 368 | showConfirmButton: false, | ||
| 369 | type: 'warning' | ||
| 370 | }) | ||
| 371 | } | ||
| 372 | }).catch(() => { | ||
| 373 | this.loading = false | ||
| 374 | this.isSave = false | ||
| 375 | }) | ||
| 376 | }, | ||
| 377 | components: { qlrCommonTable, tdytTable, ywrCommonTable }, | ||
| 378 | computed: { | ||
| 379 | ...mapGetters(["dictData", "flag"]), | ||
| 380 | }, | ||
| 381 | data () { | ||
| 382 | return { | ||
| 383 | isSave: true, | ||
| 384 | loading: false, | ||
| 385 | disabled: true, | ||
| 386 | tdytOption: [], | ||
| 387 | czrOptions: [], | ||
| 388 | czr: "", | ||
| 389 | ruleForm: { | ||
| 390 | lq: { | ||
| 391 | zlnd: "", | ||
| 392 | ldsyqssj: "", | ||
| 393 | ldsyjssj: "" | ||
| 394 | }, | ||
| 395 | flow: { | ||
| 396 | ywh: "", | ||
| 397 | }, | ||
| 398 | qlxx: { | ||
| 399 | mj: "", | ||
| 400 | }, | ||
| 401 | sldy: { | ||
| 402 | gyfs: "", | ||
| 403 | }, | ||
| 404 | slsq: {}, | ||
| 405 | fdcq2: { | ||
| 406 | zyjzmj: "", | ||
| 407 | ftjzmj: "", | ||
| 408 | }, | ||
| 409 | zdjbxx: { | ||
| 410 | ghytmc: "", | ||
| 411 | }, | ||
| 412 | }, | ||
| 413 | //传递参数 | ||
| 414 | propsParam: this.$attrs, | ||
| 415 | //表单是否可操作 | ||
| 416 | viewEdit: true, | ||
| 417 | rules: {}, | ||
| 418 | }; | ||
| 419 | }, | ||
| 420 | methods: { | ||
| 421 | /** | ||
| 422 | * @description: 更新土地用途信息 | ||
| 423 | * @param {*} val | ||
| 424 | * @author: renchao | ||
| 425 | */ | ||
| 426 | upDateTdytxxList (val) { | ||
| 427 | this.ruleForm.tdytqxList && (this.ruleForm.tdytqxList = _.cloneDeep(val)); | ||
| 428 | }, | ||
| 429 | /** | ||
| 430 | * @description: 更新权利人信息 | ||
| 431 | * @param {*} val | ||
| 432 | * @author: renchao | ||
| 433 | */ | ||
| 434 | upDateQlrxxList (val) { | ||
| 435 | if (!_.isEqual(val, this.ruleForm.qlrList)) { | ||
| 436 | this.ruleForm.qlrList = _.cloneDeep(val); | ||
| 437 | this.czrOptions = this.ruleForm.qlrList; | ||
| 438 | } | ||
| 439 | this.num = 0 | ||
| 440 | this.ruleForm.qlrList.forEach(item => { | ||
| 441 | if (item.id == this.czr) { | ||
| 442 | this.num++ | ||
| 443 | } | ||
| 444 | }) | ||
| 445 | if (this.num == 0) { | ||
| 446 | this.czr = '' | ||
| 447 | } | ||
| 448 | }, | ||
| 449 | /** | ||
| 450 | * @description: 是否持证人变化 | ||
| 451 | * @param {*} val | ||
| 452 | * @author: renchao | ||
| 453 | */ | ||
| 454 | updaterow () { | ||
| 455 | this.czr = ""; | ||
| 456 | }, | ||
| 457 | /** | ||
| 458 | * @description: 更新业务人信息 | ||
| 459 | * @param {*} val | ||
| 460 | * @author: renchao | ||
| 461 | */ | ||
| 462 | upDateYwrxxList (val) { | ||
| 463 | this.ruleForm.ywrList = _.cloneDeep(val); | ||
| 464 | }, | ||
| 465 | /** | ||
| 466 | * @description: onSubmit | ||
| 467 | * @author: renchao | ||
| 468 | */ | ||
| 469 | onSubmit () { | ||
| 470 | let that = this; | ||
| 471 | if (this.ruleForm.qlrList.length == 0) { | ||
| 472 | this.$message({ | ||
| 473 | showClose: true, | ||
| 474 | message: "请确认权利人信息", | ||
| 475 | type: "error", | ||
| 476 | }); | ||
| 477 | return false; | ||
| 478 | } | ||
| 479 | |||
| 480 | if (this.ruleForm.sldy.gyfs == "0") { | ||
| 481 | if (this.ruleForm.qlrList.length > 1) { | ||
| 482 | this.$message({ | ||
| 483 | showClose: true, | ||
| 484 | message: "共有方式:单独所有,权利人只能是一个人", | ||
| 485 | type: "error", | ||
| 486 | }); | ||
| 487 | return false; | ||
| 488 | } | ||
| 489 | this.ruleForm.qlrList[0].sfczr = "1"; | ||
| 490 | } else { | ||
| 491 | if (this.ruleForm.qlrList.length <= 1) { | ||
| 492 | this.$message({ | ||
| 493 | showClose: true, | ||
| 494 | message: | ||
| 495 | "共有方式:共同所有,按份所有,其他所有,权利人必须是两个以上", | ||
| 496 | type: "error", | ||
| 497 | }); | ||
| 498 | return false; | ||
| 499 | } | ||
| 500 | //是否分别持证 | ||
| 501 | if (this.ruleForm.sldy.sqfbcz == "1") { | ||
| 502 | //是 | ||
| 503 | this.ruleForm.qlrList.forEach(item => { | ||
| 504 | item.sfczr = "1"; | ||
| 505 | }); | ||
| 506 | } else { | ||
| 507 | if (that.czr === '') { | ||
| 508 | that.$message({ | ||
| 509 | showClose: true, | ||
| 510 | message: "请选择持证人", | ||
| 511 | type: "error", | ||
| 512 | }); | ||
| 513 | return false; | ||
| 514 | } | ||
| 515 | this.ruleForm.qlrList.forEach(item => { | ||
| 516 | if (item.id == that.czr) { | ||
| 517 | item.sfczr = "1"; | ||
| 518 | } else { | ||
| 519 | item.sfczr = "0"; | ||
| 520 | } | ||
| 521 | }); | ||
| 522 | } | ||
| 523 | } | ||
| 524 | saveData(this.ruleForm).then((res) => { | ||
| 525 | if (res.code === 200) { | ||
| 526 | this.$message({ | ||
| 527 | showClose: true, | ||
| 528 | message: "保存成功!", | ||
| 529 | type: "success", | ||
| 530 | }); | ||
| 531 | this.$store.dispatch("user/refreshPage", true); | ||
| 532 | } else { | ||
| 533 | this.$message({ | ||
| 534 | showClose: true, | ||
| 535 | message: res.message, | ||
| 536 | type: "error" | ||
| 537 | }) | ||
| 538 | } | ||
| 539 | }) | ||
| 540 | } | ||
| 541 | } | ||
| 542 | } | ||
| 543 | </script> | ||
| 544 | <style scoped lang="scss"> | ||
| 545 | @import "~@/styles/public.scss"; | ||
| 546 | |||
| 547 | /deep/.el-form { | ||
| 548 | display: flex; | ||
| 549 | flex-direction: column; | ||
| 550 | height: calc(100vh - 130px); | ||
| 551 | } | ||
| 552 | |||
| 553 | /deep/.el-form-item__label { | ||
| 554 | padding: 0; | ||
| 555 | } | ||
| 556 | |||
| 557 | /deep/.el-radio { | ||
| 558 | margin-right: 10px; | ||
| 559 | } | ||
| 560 | |||
| 561 | /deep/.el-select { | ||
| 562 | width: 100%; | ||
| 563 | } | ||
| 564 | |||
| 565 | /deep/.el-form-item { | ||
| 566 | margin-bottom: 3px; | ||
| 567 | } | ||
| 568 | |||
| 569 | .marginBot0 { | ||
| 570 | margin-bottom: 0 !important; | ||
| 571 | } | ||
| 572 | |||
| 573 | .slxx { | ||
| 574 | box-sizing: border-box; | ||
| 575 | } | ||
| 576 | |||
| 577 | .slxx_con { | ||
| 578 | flex: 1; | ||
| 579 | height: 100%; | ||
| 580 | background-color: #ffffff; | ||
| 581 | overflow-y: auto; | ||
| 582 | padding-right: 3px; | ||
| 583 | overflow-x: hidden; | ||
| 584 | } | ||
| 585 | |||
| 586 | .submit_btn { | ||
| 587 | height: 50px; | ||
| 588 | } | ||
| 589 | |||
| 590 | .btn { | ||
| 591 | text-align: center; | ||
| 592 | padding-top: 10px; | ||
| 593 | height: 36px; | ||
| 594 | background-color: #ffffff; | ||
| 595 | padding: 5px 0; | ||
| 596 | } | ||
| 597 | |||
| 598 | .textArea { | ||
| 599 | /deep/.el-textarea__inner { | ||
| 600 | min-height: 90px !important; | ||
| 601 | } | ||
| 602 | } | ||
| 603 | |||
| 604 | /deep/.el-form-item__label { | ||
| 605 | padding-bottom: 0px; | ||
| 606 | } | ||
| 607 | </style> |
| 1 | <!-- | ||
| 2 | * @Description: | ||
| 3 | * @Autor: renchao | ||
| 4 | * @LastEditTime: 2024-02-04 16:11:40 | ||
| 5 | --> | ||
| 6 | <template> | ||
| 7 | <!-- 受理信息 --> | ||
| 8 | <div class="slxx"> | ||
| 9 | <el-form | ||
| 10 | :model="ruleForm" | ||
| 11 | :rules="rules" | ||
| 12 | :class="{ readonly: editDisabled }" | ||
| 13 | v-Loading="loading" | ||
| 14 | ref="ruleForm" | ||
| 15 | :label-position="flag ? 'top' : ''" | ||
| 16 | :inline="flag" | ||
| 17 | label-width="140px"> | ||
| 18 | <div class="slxx_con" :class="flag ? 'formMarginBot0' : ''"> | ||
| 19 | <div class="slxx_title title-block"> | ||
| 20 | 申请业务信息 | ||
| 21 | <div class="triangle"></div> | ||
| 22 | </div> | ||
| 23 | <el-row :gutter="10"> | ||
| 24 | <el-col :span="8"> | ||
| 25 | <el-form-item label="业务号:"> | ||
| 26 | <el-input disabled v-model="ruleForm.flow.ywh"></el-input> | ||
| 27 | </el-form-item> | ||
| 28 | </el-col> | ||
| 29 | <el-col :span="8"> | ||
| 30 | <el-form-item label="受理人员:"> | ||
| 31 | <el-input disabled v-model="ruleForm.slsq.slry"></el-input> | ||
| 32 | </el-form-item> | ||
| 33 | </el-col> | ||
| 34 | <el-col :span="8"> | ||
| 35 | <el-form-item label="受理时间:"> | ||
| 36 | <el-input disabled v-model="ruleForm.slsq.slsj"></el-input> | ||
| 37 | </el-form-item> | ||
| 38 | </el-col> | ||
| 39 | </el-row> | ||
| 40 | <el-row :gutter="10"> | ||
| 41 | <el-col :span="8"> | ||
| 42 | <el-form-item label="权利类型:"> | ||
| 43 | <el-input disabled v-model="ruleForm.sldy.qllxmc"></el-input> | ||
| 44 | </el-form-item> | ||
| 45 | </el-col> | ||
| 46 | <el-col :span="8"> | ||
| 47 | <el-form-item label="登记类型:"> | ||
| 48 | <el-input disabled v-model="ruleForm.sldy.djlxmc"></el-input> | ||
| 49 | </el-form-item> | ||
| 50 | </el-col> | ||
| 51 | <el-col :span="8"> | ||
| 52 | <el-form-item label="登记情形:"> | ||
| 53 | <el-input disabled v-model="ruleForm.slsq.djqxmc"></el-input> | ||
| 54 | </el-form-item> | ||
| 55 | </el-col> | ||
| 56 | </el-row> | ||
| 57 | <div class="slxx_title title-block"> | ||
| 58 | <el-row> | ||
| 59 | <el-col :span="20"> | ||
| 60 | 不动产单元情况 | ||
| 61 | </el-col> | ||
| 62 | <el-col :span="4" v-if="ruleForm.sldy.djlx=='500'"> | ||
| 63 | <el-form-item label="是否创建证书:" style="height:24px"> | ||
| 64 | <el-radio-group v-model="ruleForm.sldy.sfxysczs"> | ||
| 65 | <el-radio label="1">是</el-radio> | ||
| 66 | <el-radio label="0">否</el-radio> | ||
| 67 | </el-radio-group> | ||
| 68 | </el-form-item> | ||
| 69 | </el-col> | ||
| 70 | </el-row> | ||
| 71 | <div class="triangle"></div> | ||
| 72 | </div> | ||
| 73 | <el-row :gutter="10"> | ||
| 74 | <el-col :span="8"> | ||
| 75 | <el-form-item label="宗地代码:"> | ||
| 76 | <el-input v-model="ruleForm.zdjbxx.zddm" disabled></el-input> | ||
| 77 | </el-form-item> | ||
| 78 | </el-col> | ||
| 79 | <el-col :span="8"> | ||
| 80 | <el-form-item label="不动产单元号:"> | ||
| 81 | <el-input v-model="ruleForm.sldy.bdcdyh" disabled></el-input> | ||
| 82 | </el-form-item> | ||
| 83 | </el-col> | ||
| 84 | <el-col :span="8"> | ||
| 85 | <el-form-item label="权利性质:"> | ||
| 86 | <treeselect | ||
| 87 | v-model="ruleForm.zdjbxx.qlxz" | ||
| 88 | noOptionsText="暂无数据" | ||
| 89 | :default-expand-level="1" | ||
| 90 | :disabled="!viewEdit" | ||
| 91 | placeholder="" | ||
| 92 | :normalizer="normalizer" | ||
| 93 | :show-count="true" | ||
| 94 | :options="dictData['A9']" /> | ||
| 95 | </el-form-item> | ||
| 96 | </el-col> | ||
| 97 | </el-row> | ||
| 98 | <el-row :gutter="10"> | ||
| 99 | <el-col :span="8"> | ||
| 100 | <el-form-item label="地块代码:"> | ||
| 101 | <el-input v-model="ruleForm.tdcbjyq.dkdm" :disabled="!viewEdit"></el-input> | ||
| 102 | </el-form-item> | ||
| 103 | </el-col> | ||
| 104 | <el-col :span="8"> | ||
| 105 | <el-form-item label="地块名称:"> | ||
| 106 | <el-input v-model="ruleForm.tdcbjyq.dkmc" :disabled="!viewEdit"></el-input> | ||
| 107 | </el-form-item> | ||
| 108 | </el-col> | ||
| 109 | <el-col :span="8"> | ||
| 110 | <el-form-item label="承包方式:"> | ||
| 111 | <el-input v-model="ruleForm.tdcbjyq.cbfs" :disabled="!viewEdit"></el-input> | ||
| 112 | </el-form-item> | ||
| 113 | </el-col> | ||
| 114 | |||
| 115 | </el-row> | ||
| 116 | |||
| 117 | <el-row :gutter="10"> | ||
| 118 | <el-col :span="8"> | ||
| 119 | <el-form-item label="发包方代码:"> | ||
| 120 | <el-input v-model="ruleForm.tdcbjyq.fbfdm" :disabled="!viewEdit"></el-input> | ||
| 121 | </el-form-item> | ||
| 122 | </el-col> | ||
| 123 | <el-col :span="8"> | ||
| 124 | <el-form-item label="发包方全称:"> | ||
| 125 | <el-input v-model="ruleForm.tdcbjyq.fbfqc" :disabled="!viewEdit"></el-input> | ||
| 126 | </el-form-item> | ||
| 127 | </el-col> | ||
| 128 | <el-col :span="8"> | ||
| 129 | <el-form-item label="发包方负责人:"> | ||
| 130 | <el-input v-model="ruleForm.tdcbjyq.fbffzr" :disabled="!viewEdit"></el-input> | ||
| 131 | </el-form-item> | ||
| 132 | </el-col> | ||
| 133 | </el-row> | ||
| 134 | |||
| 135 | <el-row :gutter="10"> | ||
| 136 | <el-col :span="8"> | ||
| 137 | <el-form-item label="承包起始时间:"> | ||
| 138 | <el-date-picker | ||
| 139 | v-model="ruleForm.tdcbjyq.cbqssj" | ||
| 140 | class="width100" | ||
| 141 | type="date" | ||
| 142 | :disabled="!viewEdit" | ||
| 143 | :picker-options="pickerOptionsStart" | ||
| 144 | placeholder="选择日期" | ||
| 145 | value-format="yyyy-MM-dd HH:mm:ss" | ||
| 146 | format="yyyy-MM-dd"></el-date-picker> | ||
| 147 | </el-form-item> | ||
| 148 | </el-col> | ||
| 149 | <el-col :span="8"> | ||
| 150 | <el-form-item label="承包结束时间:"> | ||
| 151 | <el-date-picker | ||
| 152 | v-model="ruleForm.tdcbjyq.cbjssj" | ||
| 153 | :disabled="!viewEdit" | ||
| 154 | class="width100" | ||
| 155 | type="date" | ||
| 156 | placeholder="选择日期" | ||
| 157 | :picker-options="pickerOptionsEnd" | ||
| 158 | value-format="yyyy-MM-dd HH:mm:ss" | ||
| 159 | format="yyyy-MM-dd"></el-date-picker> | ||
| 160 | </el-form-item> | ||
| 161 | </el-col> | ||
| 162 | <el-col :span="8"> | ||
| 163 | <el-form-item label="承包期限:"> | ||
| 164 | <el-input v-model="ruleForm.tdcbjyq.cbqx" :disabled="!viewEdit"></el-input> | ||
| 165 | </el-form-item> | ||
| 166 | </el-col> | ||
| 167 | </el-row> | ||
| 168 | <el-row :gutter="10"> | ||
| 169 | <el-col :span="8"> | ||
| 170 | <el-form-item label="用途:"> | ||
| 171 | <treeselect | ||
| 172 | :disabled="!viewEdit" | ||
| 173 | v-model="ruleForm.tdcbjyq.yt" | ||
| 174 | noOptionsText="暂无数据" | ||
| 175 | :default-expand-level="1" | ||
| 176 | placeholder="" | ||
| 177 | :normalizer="normalizer" | ||
| 178 | :show-count="true" | ||
| 179 | :options="dictData['tdyt']" /> | ||
| 180 | </el-form-item> | ||
| 181 | </el-col> | ||
| 182 | <el-col :span="8"> | ||
| 183 | <el-form-item label="确权面积:"> | ||
| 184 | <div class="flex"> | ||
| 185 | <el-input | ||
| 186 | :disabled="!viewEdit" | ||
| 187 | v-model="ruleForm.tdcbjyq.qqmj" | ||
| 188 | oninput="value = (value.match(/^\d*(\.?\d{0,2})/g)[0]) || null"></el-input> | ||
| 189 | <el-select :disabled="!viewEdit" v-model="mjdw" style="width: 68px"> | ||
| 190 | <el-option | ||
| 191 | v-for="item in dictData['A7']" | ||
| 192 | :key="item.dcode" | ||
| 193 | :label="item.dname" | ||
| 194 | :value="item.dcode"> | ||
| 195 | </el-option> | ||
| 196 | </el-select> | ||
| 197 | </div> | ||
| 198 | </el-form-item> | ||
| 199 | </el-col> | ||
| 200 | <el-col :span="8"> | ||
| 201 | <el-form-item label="土地所有权性质:"> | ||
| 202 | <el-select clearable v-model="ruleForm.tdcbjyq.tdsyqxz" class="width100" placeholder="请选择" :disabled="!viewEdit"> | ||
| 203 | <el-option v-for="item in dictData['A45']" :key="item.dcode" :label="item.dname" :value="item.dcode"> | ||
| 204 | </el-option> | ||
| 205 | </el-select> | ||
| 206 | </el-form-item> | ||
| 207 | </el-col> | ||
| 208 | </el-row> | ||
| 209 | |||
| 210 | <el-row :gutter="10"> | ||
| 211 | <el-col :span="8"> | ||
| 212 | <el-form-item label="是否永久基本农田:"> | ||
| 213 | <el-radio-group v-model="ruleForm.tdcbjyq.sfyjjbnt" :disabled="!viewEdit"> | ||
| 214 | <el-radio label="1">是</el-radio> | ||
| 215 | <el-radio label="0">否</el-radio> | ||
| 216 | </el-radio-group> | ||
| 217 | </el-form-item> | ||
| 218 | </el-col> | ||
| 219 | <el-col :span="8"> | ||
| 220 | <el-form-item label="是否自留地:"> | ||
| 221 | <el-radio-group | ||
| 222 | v-model="ruleForm.tdcbjyq.sfzld" | ||
| 223 | :disabled="!viewEdit"> | ||
| 224 | <el-radio label="1">是</el-radio> | ||
| 225 | <el-radio label="0">否</el-radio> | ||
| 226 | </el-radio-group> | ||
| 227 | </el-form-item> | ||
| 228 | </el-col> | ||
| 229 | <el-col :span="8"> | ||
| 230 | <el-form-item label="用地用海分类:"> | ||
| 231 | <el-select clearable v-model="ruleForm.tdcbjyq.ydyhfl" class="width100" placeholder="请选择" :disabled="!viewEdit"> | ||
| 232 | <el-option v-for="item in dictData['A56']" :key="item.dcode" :label="item.dname" :value="item.dcode"> | ||
| 233 | </el-option> | ||
| 234 | </el-select> | ||
| 235 | </el-form-item> | ||
| 236 | </el-col> | ||
| 237 | </el-row> | ||
| 238 | |||
| 239 | <el-row :gutter="10"> | ||
| 240 | <el-col :span="8"> | ||
| 241 | <el-form-item label="承包经营权取得方式:"> | ||
| 242 | <el-select clearable v-model="ruleForm.tdcbjyq.cbjyqqdfs" class="width100" placeholder="请选择" :disabled="!viewEdit"> | ||
| 243 | <el-option v-for="item in dictData['A59']" :key="item.dcode" :label="item.dname" :value="item.dcode"> | ||
| 244 | </el-option> | ||
| 245 | </el-select> | ||
| 246 | </el-form-item> | ||
| 247 | </el-col> | ||
| 248 | <el-col :span="16"> | ||
| 249 | <el-form-item label="附记:"> | ||
| 250 | <el-input maxlength="100" :disabled="!viewEdit" v-model="ruleForm.tdcbjyq.fj"></el-input> | ||
| 251 | </el-form-item> | ||
| 252 | </el-col> | ||
| 253 | </el-row> | ||
| 254 | |||
| 255 | <div class="slxx_title title-block"> | ||
| 256 | 权利人信息 | ||
| 257 | <div class="triangle"></div> | ||
| 258 | </div> | ||
| 259 | <el-row :gutter="10"> | ||
| 260 | <el-col :span="12"> | ||
| 261 | <el-form-item label="共有方式:"> | ||
| 262 | <el-radio-group | ||
| 263 | :disabled="!viewEdit" | ||
| 264 | v-model="ruleForm.sldy.gyfs"> | ||
| 265 | <el-radio label="0">单独所有</el-radio> | ||
| 266 | <el-radio label="1">共同共有</el-radio> | ||
| 267 | <el-radio label="2">按份所有</el-radio> | ||
| 268 | <el-radio label="3">其它共有</el-radio> | ||
| 269 | </el-radio-group> | ||
| 270 | </el-form-item> | ||
| 271 | </el-col> | ||
| 272 | <el-col :span="6" v-show="ruleForm.sldy.gyfs != '0'"> | ||
| 273 | <el-form-item label="是否分别持证:"> | ||
| 274 | <el-radio-group | ||
| 275 | v-model="ruleForm.sldy.sqfbcz" | ||
| 276 | :disabled="!viewEdit" | ||
| 277 | @input="updaterow()"> | ||
| 278 | <el-radio :label="1">是</el-radio> | ||
| 279 | <el-radio :label="0">否</el-radio> | ||
| 280 | </el-radio-group> | ||
| 281 | </el-form-item> | ||
| 282 | </el-col> | ||
| 283 | <el-col | ||
| 284 | :span="6" | ||
| 285 | v-show="ruleForm.sldy.sqfbcz == '0' && ruleForm.sldy.gyfs != '0'"> | ||
| 286 | <el-form-item label="持证人:"> | ||
| 287 | <el-select | ||
| 288 | v-model="czr" | ||
| 289 | placeholder="持证人" | ||
| 290 | :disabled="!viewEdit"> | ||
| 291 | <el-option | ||
| 292 | v-for="(item, index) in czrOptions" | ||
| 293 | :key="index" | ||
| 294 | :label="item.sqrmc" | ||
| 295 | :value="item.id"> | ||
| 296 | </el-option> | ||
| 297 | </el-select> | ||
| 298 | </el-form-item> | ||
| 299 | </el-col> | ||
| 300 | </el-row> | ||
| 301 | <qlrCommonTable | ||
| 302 | :tableData="ruleForm.qlrList" | ||
| 303 | :disabled="viewEdit" | ||
| 304 | @upDateQlrxxList="upDateQlrxxList" | ||
| 305 | :key="key" | ||
| 306 | :gyfs="ruleForm.sldy.gyfs" /> | ||
| 307 | |||
| 308 | <div v-if="ruleForm.qlxx.djlx == '200'"> | ||
| 309 | <div class="slxx_title title-block"> | ||
| 310 | 义务人信息 | ||
| 311 | <div class="triangle"></div> | ||
| 312 | </div> | ||
| 313 | <ywrCommonTable | ||
| 314 | v-if="ruleForm.ywrList" | ||
| 315 | :disabled="viewEdit" | ||
| 316 | :tableData="ruleForm.ywrList" | ||
| 317 | :key="key" | ||
| 318 | @upDateQlrxxList="upDateYwrxxList" /> | ||
| 319 | </div> | ||
| 320 | <div class="slxx_title title-block"> | ||
| 321 | 登记原因 | ||
| 322 | <div class="triangle"></div> | ||
| 323 | </div> | ||
| 324 | <el-row :gutter="10"> | ||
| 325 | <el-col> | ||
| 326 | <el-form-item label="登记原因:" prop="tdcbjyq.djyy"> | ||
| 327 | <el-input | ||
| 328 | class="textArea" | ||
| 329 | maxlength="500" | ||
| 330 | show-word-limit | ||
| 331 | type="textarea" | ||
| 332 | :disabled="!viewEdit" | ||
| 333 | v-model="ruleForm.tdcbjyq.djyy"> | ||
| 334 | </el-input> | ||
| 335 | </el-form-item> | ||
| 336 | </el-col> | ||
| 337 | </el-row> | ||
| 338 | </div> | ||
| 339 | <el-row class="btn" v-if="isSave"> | ||
| 340 | <el-form-item> | ||
| 341 | <el-button type="primary" @click="onSubmit">保存</el-button> | ||
| 342 | </el-form-item> | ||
| 343 | </el-row> | ||
| 344 | </el-form> | ||
| 345 | </div> | ||
| 346 | </template> | ||
| 347 | <script> | ||
| 348 | import { mapGetters } from "vuex"; | ||
| 349 | import ywmix from "@/views/ywbl/mixin/index"; | ||
| 350 | import { Init, saveData } from "@/api/workflow/tdcbjyq.js"; | ||
| 351 | import qlrCommonTable from "@/views/workflow/components/qlrCommonTable"; | ||
| 352 | import ywrCommonTable from "@/views/workflow/components/ywrCommonTable"; | ||
| 353 | export default { | ||
| 354 | mixins: [ywmix], | ||
| 355 | mounted () { | ||
| 356 | let that = this | ||
| 357 | this.viewEdit = this.$parent.currentSelectTab.ableOperation; | ||
| 358 | this.propsParam = this.$attrs; | ||
| 359 | var formdata = new FormData(); | ||
| 360 | this.loading = true | ||
| 361 | formdata.append("bsmSldy", this.propsParam.bsmSldy); | ||
| 362 | formdata.append("djlx", this.propsParam.djlx); | ||
| 363 | formdata.append("isEdit", this.viewEdit); | ||
| 364 | Init(formdata).then((res) => { | ||
| 365 | setTimeout(() => { | ||
| 366 | that.loading = false | ||
| 367 | }, 200) | ||
| 368 | if (res.code === 200) { | ||
| 369 | that.ruleForm = res.result; | ||
| 370 | that.ruleForm.qlrList.forEach((item) => { | ||
| 371 | item.id = item.bsmSqr | ||
| 372 | if (item.sfczr == '1') { | ||
| 373 | that.czr = item.bsmSqr | ||
| 374 | } | ||
| 375 | }) | ||
| 376 | that.czrOptions = that.ruleForm.qlrList; | ||
| 377 | that.isSave = that.viewEdit | ||
| 378 | } else { | ||
| 379 | that.isSave = false | ||
| 380 | that.$confirm(res.message, '提示', { | ||
| 381 | cancelButtonText: '取消', | ||
| 382 | showConfirmButton: false, | ||
| 383 | type: 'warning' | ||
| 384 | }) | ||
| 385 | } | ||
| 386 | }).catch(() => { | ||
| 387 | this.loading = false | ||
| 388 | this.isSave = false | ||
| 389 | }) | ||
| 390 | }, | ||
| 391 | components: { qlrCommonTable, ywrCommonTable }, | ||
| 392 | computed: { | ||
| 393 | ...mapGetters(["dictData", "flag"]), | ||
| 394 | // 根据流程判断表单是否为只读 | ||
| 395 | editDisabled () { | ||
| 396 | if (!this.viewEdit) { | ||
| 397 | //只读状态 | ||
| 398 | return true; | ||
| 399 | } | ||
| 400 | return false; | ||
| 401 | }, | ||
| 402 | }, | ||
| 403 | data () { | ||
| 404 | return { | ||
| 405 | // 开始结束日期限制 | ||
| 406 | pickerOptionsStart: { | ||
| 407 | disabledDate: (time) => { | ||
| 408 | if (this.ruleForm.tdcbjyq.cbjssj) { | ||
| 409 | return ( | ||
| 410 | time.getTime() >= new Date(this.ruleForm.tdcbjyq.cbjssj).getTime() | ||
| 411 | ); | ||
| 412 | } | ||
| 413 | } | ||
| 414 | }, | ||
| 415 | // 结束日期限制 | ||
| 416 | pickerOptionsEnd: { | ||
| 417 | disabledDate: (time) => { | ||
| 418 | if (this.ruleForm.tdcbjyq.cbqssj) { | ||
| 419 | return ( | ||
| 420 | time.getTime() <= new Date(this.ruleForm.tdcbjyq.cbqssj).getTime() | ||
| 421 | ); | ||
| 422 | } | ||
| 423 | } | ||
| 424 | }, | ||
| 425 | isSave: true, | ||
| 426 | // 键名转换,方法默认是label和children进行树状渲染 | ||
| 427 | normalizer (node) { | ||
| 428 | //方法 | ||
| 429 | if (node.children == null || node.children == "null") { | ||
| 430 | delete node.children; | ||
| 431 | } | ||
| 432 | return { | ||
| 433 | id: node.dcode, | ||
| 434 | label: node.dname, | ||
| 435 | }; | ||
| 436 | }, | ||
| 437 | loading: false, | ||
| 438 | mjdw: "1", | ||
| 439 | //表单是否可操作 | ||
| 440 | viewEdit: true, | ||
| 441 | czr: "", | ||
| 442 | key: 0, | ||
| 443 | disabled: true, | ||
| 444 | czrOptions: [], | ||
| 445 | ruleForm: {}, | ||
| 446 | //传递参数 | ||
| 447 | propsParam: {}, | ||
| 448 | rules: { | ||
| 449 | 'tdcbjyq.djyy': [ | ||
| 450 | { required: true, message: '请输入登记原因', trigger: 'blur' } | ||
| 451 | ] | ||
| 452 | } | ||
| 453 | } | ||
| 454 | }, | ||
| 455 | methods: { | ||
| 456 | /** | ||
| 457 | * @description: 更新权利人信息 | ||
| 458 | * @param {*} val | ||
| 459 | * @author: renchao | ||
| 460 | */ | ||
| 461 | upDateQlrxxList (val) { | ||
| 462 | this.ruleForm.qlrList && (this.ruleForm.qlrList = _.cloneDeep(val)); | ||
| 463 | this.czrOptions = this.ruleForm.qlrList; | ||
| 464 | this.num = 0 | ||
| 465 | this.ruleForm.qlrList.forEach(item => { | ||
| 466 | if (item.id == this.czr) { | ||
| 467 | this.num++ | ||
| 468 | } | ||
| 469 | }) | ||
| 470 | if (this.num == 0) { | ||
| 471 | this.czr = '' | ||
| 472 | } | ||
| 473 | }, | ||
| 474 | /** | ||
| 475 | * @description: 是否持证人变化 | ||
| 476 | * @param {*} val | ||
| 477 | * @author: renchao | ||
| 478 | */ | ||
| 479 | updaterow () { | ||
| 480 | this.czr = ""; | ||
| 481 | }, | ||
| 482 | /** | ||
| 483 | * @description: 更新义务人信息 | ||
| 484 | * @param {*} val | ||
| 485 | * @author: renchao | ||
| 486 | */ | ||
| 487 | upDateYwrxxList (val) { | ||
| 488 | this.ruleForm.ywrList && (this.ruleForm.ywrList = _.cloneDeep(val)); | ||
| 489 | this.key++; | ||
| 490 | }, | ||
| 491 | /** | ||
| 492 | * @description: onSubmit | ||
| 493 | * @author: renchao | ||
| 494 | */ | ||
| 495 | onSubmit () { | ||
| 496 | let that = this; | ||
| 497 | if (this.ruleForm.qlrList.length == 0) { | ||
| 498 | this.$message({ | ||
| 499 | showClose: true, | ||
| 500 | message: "请确认权利人信息", | ||
| 501 | type: "error", | ||
| 502 | }); | ||
| 503 | return false; | ||
| 504 | } | ||
| 505 | if (this.ruleForm.sldy.gyfs == "0") { | ||
| 506 | if (this.ruleForm.qlrList.length > 1) { | ||
| 507 | this.$message({ | ||
| 508 | showClose: true, | ||
| 509 | message: "共有方式:单独所有,权利人只能是一个人", | ||
| 510 | type: "error", | ||
| 511 | }); | ||
| 512 | return false; | ||
| 513 | } | ||
| 514 | this.ruleForm.qlrList[0].sfczr = "1"; | ||
| 515 | } else { | ||
| 516 | if (this.ruleForm.qlrList.length <= 1) { | ||
| 517 | this.$message({ | ||
| 518 | showClose: true, | ||
| 519 | message: | ||
| 520 | "共有方式:共同所有,按份所有,其他所有,权利人必须是两个以上", | ||
| 521 | type: "error", | ||
| 522 | }); | ||
| 523 | return false; | ||
| 524 | } | ||
| 525 | //是否分别持证 | ||
| 526 | if (this.ruleForm.sldy.sqfbcz == "1") { | ||
| 527 | //是 | ||
| 528 | this.ruleForm.qlrList.forEach((item, index) => { | ||
| 529 | item.sfczr = "1"; | ||
| 530 | }); | ||
| 531 | } else { | ||
| 532 | if (that.czr === '') { | ||
| 533 | that.$message({ | ||
| 534 | showClose: true, | ||
| 535 | message: "请选择持证人", | ||
| 536 | type: "error", | ||
| 537 | }); | ||
| 538 | return false; | ||
| 539 | } | ||
| 540 | this.ruleForm.qlrList.forEach((item, index) => { | ||
| 541 | if (item.id == that.czr) { | ||
| 542 | item.sfczr = "1"; | ||
| 543 | } else { | ||
| 544 | item.sfczr = "0"; | ||
| 545 | } | ||
| 546 | }); | ||
| 547 | } | ||
| 548 | } | ||
| 549 | /** | ||
| 550 | * @description: saveData | ||
| 551 | * @author: renchao | ||
| 552 | */ | ||
| 553 | |||
| 554 | this.$refs['ruleForm'].validate((valid) => { | ||
| 555 | if (valid) { | ||
| 556 | that.$store.dispatch("user/refreshPage", false); | ||
| 557 | saveData(that.ruleForm).then((res) => { | ||
| 558 | if (res.code === 200) { | ||
| 559 | that.$message({ | ||
| 560 | showClose: true, | ||
| 561 | message: "保存成功!", | ||
| 562 | type: "success", | ||
| 563 | }); | ||
| 564 | that.$store.dispatch("user/refreshPage", true); | ||
| 565 | } else { | ||
| 566 | that.$message({ | ||
| 567 | showClose: true, | ||
| 568 | message: res.message, | ||
| 569 | type: "error" | ||
| 570 | }) | ||
| 571 | } | ||
| 572 | }) | ||
| 573 | } else { | ||
| 574 | that.$message({ | ||
| 575 | showClose: true, | ||
| 576 | message: "请输入登记原因", | ||
| 577 | type: "error" | ||
| 578 | }) | ||
| 579 | return false | ||
| 580 | } | ||
| 581 | }) | ||
| 582 | } | ||
| 583 | } | ||
| 584 | } | ||
| 585 | </script> | ||
| 586 | <style scoped lang="scss"> | ||
| 587 | @import "~@/styles/public.scss"; | ||
| 588 | @import "~@/styles/slxx/slxx.scss"; | ||
| 589 | /deep/.el-form-item__error { | ||
| 590 | display: none; | ||
| 591 | } | ||
| 592 | </style> |
src/views/ywbl/slsqxx/tdsyq/slxx.vue
deleted
100644 → 0
| 1 | <!-- | ||
| 2 | * @Description: | ||
| 3 | * @Autor: renchao | ||
| 4 | * @LastEditTime: 2024-01-31 10:09:50 | ||
| 5 | --> | ||
| 6 | <template> | ||
| 7 | <!-- 受理信息 --> | ||
| 8 | <div class="slxx"> | ||
| 9 | <el-form | ||
| 10 | :model="ruleForm" | ||
| 11 | :rules="rules" | ||
| 12 | v-Loading="loading" | ||
| 13 | ref="ruleForm" | ||
| 14 | :label-position="flag ? 'top' : ''" | ||
| 15 | :inline="flag" | ||
| 16 | label-width="120px"> | ||
| 17 | <div class="slxx_con" :class="flag ? 'formMarginBot0' : ''"> | ||
| 18 | <div class="slxx_title title-block"> | ||
| 19 | 申请业务信息 | ||
| 20 | <div class="triangle"></div> | ||
| 21 | </div> | ||
| 22 | <el-row :gutter="10"> | ||
| 23 | <el-col :span="8"> | ||
| 24 | <el-form-item label="业务号:"> | ||
| 25 | <el-input disabled v-model="ruleForm.flow.ywh"></el-input> | ||
| 26 | </el-form-item> | ||
| 27 | </el-col> | ||
| 28 | <el-col :span="8"> | ||
| 29 | <el-form-item label="受理人员:"> | ||
| 30 | <el-input disabled v-model="ruleForm.slsq.slry"></el-input> | ||
| 31 | </el-form-item> | ||
| 32 | </el-col> | ||
| 33 | <el-col :span="8"> | ||
| 34 | <el-form-item label="受理时间:"> | ||
| 35 | <el-input disabled v-model="ruleForm.slsq.slsj"></el-input> | ||
| 36 | </el-form-item> | ||
| 37 | </el-col> | ||
| 38 | </el-row> | ||
| 39 | <el-row :gutter="10"> | ||
| 40 | <el-col :span="8"> | ||
| 41 | <el-form-item label="权利类型:"> | ||
| 42 | <el-input disabled v-model="ruleForm.sldy.qllxmc"></el-input> | ||
| 43 | </el-form-item> | ||
| 44 | </el-col> | ||
| 45 | <el-col :span="8"> | ||
| 46 | <el-form-item label="登记类型:"> | ||
| 47 | <el-input disabled v-model="ruleForm.sldy.djlxmc"></el-input> | ||
| 48 | </el-form-item> | ||
| 49 | </el-col> | ||
| 50 | <el-col :span="8"> | ||
| 51 | <el-form-item label="登记情形:"> | ||
| 52 | <el-input disabled v-model="ruleForm.slsq.djqxmc"></el-input> | ||
| 53 | </el-form-item> | ||
| 54 | </el-col> | ||
| 55 | </el-row> | ||
| 56 | <div class="slxx_title title-block"> | ||
| 57 | <el-row> | ||
| 58 | <el-col :span="20"> | ||
| 59 | 不动产单元情况 | ||
| 60 | </el-col> | ||
| 61 | <el-col :span="4" v-if="ruleForm.sldy.djlx=='500'"> | ||
| 62 | <el-form-item label="是否创建证书:" style="height:24px"> | ||
| 63 | <el-radio-group v-model="ruleForm.sldy.sfxysczs"> | ||
| 64 | <el-radio label="1">是</el-radio> | ||
| 65 | <el-radio label="0">否</el-radio> | ||
| 66 | </el-radio-group> | ||
| 67 | </el-form-item> | ||
| 68 | </el-col> | ||
| 69 | </el-row> | ||
| 70 | <div class="triangle"></div> | ||
| 71 | </div> | ||
| 72 | <el-row :gutter="10"> | ||
| 73 | <el-col :span="8"> | ||
| 74 | <el-form-item label="宗地代码:"> | ||
| 75 | <el-input disabled v-model="ruleForm.zdjbxx.zddm"></el-input> | ||
| 76 | </el-form-item> | ||
| 77 | </el-col> | ||
| 78 | <el-col :span="8"> | ||
| 79 | <el-form-item label="不动产单元号:"> | ||
| 80 | <el-input disabled v-model="ruleForm.zdjbxx.bdcdyh"></el-input> | ||
| 81 | </el-form-item> | ||
| 82 | </el-col> | ||
| 83 | <el-col :span="8"> | ||
| 84 | <el-form-item label="权利性质:"> | ||
| 85 | <el-input disabled v-model="ruleForm.zdjbxx.qlxzmc"></el-input> | ||
| 86 | </el-form-item> | ||
| 87 | </el-col> | ||
| 88 | </el-row> | ||
| 89 | <el-row :gutter="10"> | ||
| 90 | <el-col :span="8"> | ||
| 91 | <el-form-item label="宗地面积:"> | ||
| 92 | <el-input :disabled="!viewEdit" v-model="ruleForm.zdjbxx.zdmj"></el-input> | ||
| 93 | </el-form-item> | ||
| 94 | </el-col> | ||
| 95 | <el-col :span="8"> | ||
| 96 | <el-form-item label="权利设定方式:"> | ||
| 97 | <el-input disabled v-model="ruleForm.zdjbxx.qlsdfsmc"></el-input> | ||
| 98 | </el-form-item> | ||
| 99 | </el-col> | ||
| 100 | <el-col :span="8"> | ||
| 101 | <el-form-item label="农用地面积:"> | ||
| 102 | <div class="flex"> | ||
| 103 | <el-input | ||
| 104 | maxlength="12" | ||
| 105 | v-model="ruleForm.tdsyq.nydmj" | ||
| 106 | :disabled="!viewEdit" | ||
| 107 | oninput="value = (value.match(/^\d*(\.?\d{0,2})/g)[0]) || null"></el-input> | ||
| 108 | <el-select | ||
| 109 | v-model="mjdw" | ||
| 110 | :disabled="!viewEdit" | ||
| 111 | style="width: 68px"> | ||
| 112 | <el-option | ||
| 113 | v-for="item in dictData['A7']" | ||
| 114 | :key="item.dcode" | ||
| 115 | :label="item.dname" | ||
| 116 | :value="item.dcode"> | ||
| 117 | </el-option> | ||
| 118 | </el-select> | ||
| 119 | </div> | ||
| 120 | </el-form-item> | ||
| 121 | </el-col> | ||
| 122 | </el-row> | ||
| 123 | <el-row :gutter="10"> | ||
| 124 | <el-col :span="8"> | ||
| 125 | <el-form-item label="耕地面积:"> | ||
| 126 | <div class="flex"> | ||
| 127 | <el-input | ||
| 128 | maxlength="12" | ||
| 129 | v-model="ruleForm.tdsyq.gdmj" | ||
| 130 | :disabled="!viewEdit" | ||
| 131 | oninput="value = (value.match(/^\d*(\.?\d{0,2})/g)[0]) || null"></el-input> | ||
| 132 | <el-select | ||
| 133 | v-model="mjdw" | ||
| 134 | :disabled="!viewEdit" | ||
| 135 | style="width: 68px"> | ||
| 136 | <el-option | ||
| 137 | v-for="item in dictData['A7']" | ||
| 138 | :key="item.dcode" | ||
| 139 | :label="item.dname" | ||
| 140 | :value="item.dcode"> | ||
| 141 | </el-option> | ||
| 142 | </el-select> | ||
| 143 | </div> | ||
| 144 | </el-form-item> | ||
| 145 | </el-col> | ||
| 146 | <el-col :span="8"> | ||
| 147 | <el-form-item label="林地面积:"> | ||
| 148 | <div class="flex"> | ||
| 149 | <el-input | ||
| 150 | maxlength="12" | ||
| 151 | v-model="ruleForm.tdsyq.ldmj" | ||
| 152 | :disabled="!viewEdit" | ||
| 153 | oninput="value = (value.match(/^\d*(\.?\d{0,2})/g)[0]) || null"></el-input> | ||
| 154 | <el-select | ||
| 155 | v-model="mjdw" | ||
| 156 | :disabled="!viewEdit" | ||
| 157 | style="width: 68px"> | ||
| 158 | <el-option | ||
| 159 | v-for="item in dictData['A7']" | ||
| 160 | :key="item.dcode" | ||
| 161 | :label="item.dname" | ||
| 162 | :value="item.dcode"> | ||
| 163 | </el-option> | ||
| 164 | </el-select> | ||
| 165 | </div> | ||
| 166 | </el-form-item> | ||
| 167 | </el-col> | ||
| 168 | <el-col :span="8"> | ||
| 169 | <el-form-item label="草地面积:"> | ||
| 170 | <div class="flex"> | ||
| 171 | <el-input | ||
| 172 | maxlength="12" | ||
| 173 | v-model="ruleForm.tdsyq.cdmj" | ||
| 174 | :disabled="!viewEdit" | ||
| 175 | oninput="value = (value.match(/^\d*(\.?\d{0,2})/g)[0]) || null"></el-input> | ||
| 176 | <el-select | ||
| 177 | v-model="mjdw" | ||
| 178 | :disabled="!viewEdit" | ||
| 179 | style="width: 68px"> | ||
| 180 | <el-option | ||
| 181 | v-for="item in dictData['A7']" | ||
| 182 | :key="item.dcode" | ||
| 183 | :label="item.dname" | ||
| 184 | :value="item.dcode"> | ||
| 185 | </el-option> | ||
| 186 | </el-select> | ||
| 187 | </div> | ||
| 188 | </el-form-item> | ||
| 189 | </el-col> | ||
| 190 | </el-row> | ||
| 191 | <el-row :gutter="10"> | ||
| 192 | <el-col :span="8"> | ||
| 193 | <el-form-item label="其他农用地面积:"> | ||
| 194 | <div class="flex"> | ||
| 195 | <el-input | ||
| 196 | maxlength="12" | ||
| 197 | v-model="ruleForm.tdsyq.qtnydmj" | ||
| 198 | :disabled="!viewEdit" | ||
| 199 | oninput="value = (value.match(/^\d*(\.?\d{0,2})/g)[0]) || null"></el-input> | ||
| 200 | <el-select | ||
| 201 | v-model="mjdw" | ||
| 202 | :disabled="!viewEdit" | ||
| 203 | style="width: 68px"> | ||
| 204 | <el-option | ||
| 205 | v-for="item in dictData['A7']" | ||
| 206 | :key="item.dcode" | ||
| 207 | :label="item.dname" | ||
| 208 | :value="item.dcode"> | ||
| 209 | </el-option> | ||
| 210 | </el-select> | ||
| 211 | </div> | ||
| 212 | </el-form-item> | ||
| 213 | </el-col> | ||
| 214 | <el-col :span="8"> | ||
| 215 | <el-form-item label="建筑使用面积:"> | ||
| 216 | <div class="flex"> | ||
| 217 | <el-input | ||
| 218 | maxlength="12" | ||
| 219 | v-model="ruleForm.tdsyq.jsydmj" | ||
| 220 | :disabled="!viewEdit" | ||
| 221 | oninput="value = (value.match(/^\d*(\.?\d{0,2})/g)[0]) || null"></el-input> | ||
| 222 | <el-select | ||
| 223 | v-model="mjdw" | ||
| 224 | :disabled="!viewEdit" | ||
| 225 | style="width: 68px"> | ||
| 226 | <el-option | ||
| 227 | v-for="item in dictData['A7']" | ||
| 228 | :key="item.dcode" | ||
| 229 | :label="item.dname" | ||
| 230 | :value="item.dcode"> | ||
| 231 | </el-option> | ||
| 232 | </el-select> | ||
| 233 | </div> | ||
| 234 | </el-form-item> | ||
| 235 | </el-col> | ||
| 236 | <el-col :span="8"> | ||
| 237 | <el-form-item label="未利用地面积:"> | ||
| 238 | <div class="flex"> | ||
| 239 | <el-input | ||
| 240 | maxlength="12" | ||
| 241 | v-model="ruleForm.tdsyq.wlydmj" | ||
| 242 | :disabled="!viewEdit" | ||
| 243 | oninput="value = (value.match(/^\d*(\.?\d{0,2})/g)[0]) || null"></el-input> | ||
| 244 | <el-select | ||
| 245 | v-model="mjdw" | ||
| 246 | :disabled="!viewEdit" | ||
| 247 | style="width: 68px"> | ||
| 248 | <el-option | ||
| 249 | v-for="item in dictData['A7']" | ||
| 250 | :key="item.dcode" | ||
| 251 | :label="item.dname" | ||
| 252 | :value="item.dcode"> | ||
| 253 | </el-option> | ||
| 254 | </el-select> | ||
| 255 | </div> | ||
| 256 | </el-form-item> | ||
| 257 | </el-col> | ||
| 258 | </el-row> | ||
| 259 | <div class="slxx_title title-block"> | ||
| 260 | 土地用途 | ||
| 261 | <div class="triangle"></div> | ||
| 262 | </div> | ||
| 263 | <tdytTable | ||
| 264 | :tableData="ruleForm.tdytqxList" | ||
| 265 | :ableOperation="viewEdit" | ||
| 266 | @upDateTdytxxList="upDateTdytxxList" /> | ||
| 267 | <div class="slxx_title title-block"> | ||
| 268 | 权利人信息 | ||
| 269 | <div class="triangle"></div> | ||
| 270 | </div> | ||
| 271 | <el-row :gutter="10"> | ||
| 272 | <el-col :span="12"> | ||
| 273 | <el-form-item label="共有方式:"> | ||
| 274 | <el-radio-group | ||
| 275 | :disabled="!viewEdit" | ||
| 276 | v-model="ruleForm.sldy.gyfs"> | ||
| 277 | <el-radio label="0">单独所有</el-radio> | ||
| 278 | <el-radio label="1">共同共有</el-radio> | ||
| 279 | <el-radio label="2">按份所有</el-radio> | ||
| 280 | <el-radio label="3">其它共有</el-radio> | ||
| 281 | </el-radio-group> | ||
| 282 | </el-form-item> | ||
| 283 | </el-col> | ||
| 284 | <el-col :span="6" v-show="ruleForm.sldy.gyfs != '0'"> | ||
| 285 | <el-form-item label="是否分别持证:"> | ||
| 286 | <el-radio-group | ||
| 287 | v-model="ruleForm.sldy.sqfbcz" | ||
| 288 | :disabled="!viewEdit" | ||
| 289 | @input="updaterow()"> | ||
| 290 | <el-radio :label="1">是</el-radio> | ||
| 291 | <el-radio :label="0">否</el-radio> | ||
| 292 | </el-radio-group> | ||
| 293 | </el-form-item> | ||
| 294 | </el-col> | ||
| 295 | <el-col | ||
| 296 | :span="6" | ||
| 297 | v-show="ruleForm.sldy.sqfbcz == '0' && ruleForm.sldy.gyfs != '0'"> | ||
| 298 | <el-form-item label="持证人:"> | ||
| 299 | <el-select | ||
| 300 | v-model="czr" | ||
| 301 | placeholder="持证人" | ||
| 302 | :disabled="!viewEdit"> | ||
| 303 | <el-option | ||
| 304 | v-for="(item, index) in czrOptions" | ||
| 305 | :key="index" | ||
| 306 | :label="item.sqrmc" | ||
| 307 | :value="item.id"> | ||
| 308 | </el-option> | ||
| 309 | </el-select> | ||
| 310 | </el-form-item> | ||
| 311 | </el-col> | ||
| 312 | </el-row> | ||
| 313 | <qlrCommonTable | ||
| 314 | :tableData="ruleForm.qlrList" | ||
| 315 | :disabled="viewEdit" | ||
| 316 | @upDateQlrxxList="upDateQlrxxList" | ||
| 317 | :key="key" | ||
| 318 | :gyfs="ruleForm.sldy.gyfs" /> | ||
| 319 | |||
| 320 | <div v-if="ruleForm.ywrList && ruleForm.ywrList.length > 0"> | ||
| 321 | <div class="slxx_title title-block"> | ||
| 322 | 义务人信息 | ||
| 323 | <div class="triangle"></div> | ||
| 324 | </div> | ||
| 325 | <ywrCommonTable | ||
| 326 | v-if="ruleForm.ywrList" | ||
| 327 | :disabled="viewEdit" | ||
| 328 | :tableData="ruleForm.ywrList" | ||
| 329 | :key="key" | ||
| 330 | @upDateQlrxxList="upDateYwrxxList" /> | ||
| 331 | </div> | ||
| 332 | |||
| 333 | <div class="slxx_title title-block"> | ||
| 334 | 登记原因 | ||
| 335 | <div class="triangle"></div> | ||
| 336 | </div> | ||
| 337 | <el-row :gutter="10"> | ||
| 338 | <el-col> | ||
| 339 | <el-form-item label="登记原因:" prop="tdsyq.djyy"> | ||
| 340 | <el-input | ||
| 341 | class="textArea" | ||
| 342 | maxlength="500" | ||
| 343 | show-word-limit | ||
| 344 | type="textarea" | ||
| 345 | :disabled="!viewEdit" | ||
| 346 | v-model="ruleForm.tdsyq.djyy"> | ||
| 347 | </el-input> | ||
| 348 | </el-form-item> | ||
| 349 | </el-col> | ||
| 350 | </el-row> | ||
| 351 | </div> | ||
| 352 | <el-row class="btn" v-if="isSave"> | ||
| 353 | <el-form-item> | ||
| 354 | <el-button type="primary" @click="onSubmit">保存</el-button> | ||
| 355 | </el-form-item> | ||
| 356 | </el-row> | ||
| 357 | </el-form> | ||
| 358 | </div> | ||
| 359 | </template> | ||
| 360 | <script> | ||
| 361 | import { mapGetters } from "vuex"; | ||
| 362 | import ywmix from "@/views/ywbl/mixin/index"; | ||
| 363 | import { Init, saveData } from "@/api/workflow/tdsyqFlow.js"; | ||
| 364 | import tdytTable from "@/views/workflow/components/tdytTable"; | ||
| 365 | import qlrCommonTable from "@/views/workflow/components/qlrCommonTable"; | ||
| 366 | import ywrCommonTable from "@/views/workflow/components/ywrCommonTable"; | ||
| 367 | export default { | ||
| 368 | mixins: [ywmix], | ||
| 369 | components: { qlrCommonTable, tdytTable, ywrCommonTable }, | ||
| 370 | mounted () { | ||
| 371 | this.viewEdit = this.$parent.currentSelectTab.ableOperation; | ||
| 372 | this.propsParam = this.$attrs; | ||
| 373 | var formdata = new FormData(); | ||
| 374 | let that = this; | ||
| 375 | this.loading = true | ||
| 376 | formdata.append("bsmSldy", this.propsParam.bsmSldy); | ||
| 377 | formdata.append("djlx", this.propsParam.djlx); | ||
| 378 | formdata.append("isEdit", this.viewEdit); | ||
| 379 | Init(formdata).then((res) => { | ||
| 380 | setTimeout(() => { | ||
| 381 | this.loading = false | ||
| 382 | }, 200) | ||
| 383 | if (res.code === 200) { | ||
| 384 | that.ruleForm = res.result; | ||
| 385 | that.ruleForm.qlrList.forEach((item) => { | ||
| 386 | item.id = item.bsmSqr | ||
| 387 | if (item.sfczr == '1') { | ||
| 388 | that.czr = item.bsmSqr | ||
| 389 | } | ||
| 390 | }) | ||
| 391 | that.czrOptions = that.ruleForm.qlrList; | ||
| 392 | that.isSave = that.viewEdit | ||
| 393 | } else { | ||
| 394 | this.isSave = false | ||
| 395 | this.$confirm(res.message, '提示', { | ||
| 396 | cancelButtonText: '取消', | ||
| 397 | showConfirmButton: false, | ||
| 398 | type: 'warning' | ||
| 399 | }) | ||
| 400 | } | ||
| 401 | }).catch(() => { | ||
| 402 | this.loading = false | ||
| 403 | }) | ||
| 404 | }, | ||
| 405 | computed: { | ||
| 406 | ...mapGetters(["dictData", "flag"]), | ||
| 407 | }, | ||
| 408 | data () { | ||
| 409 | return { | ||
| 410 | isSave: true, | ||
| 411 | loading: false, | ||
| 412 | // 键名转换,方法默认是label和children进行树状渲染 | ||
| 413 | normalizer (node) { | ||
| 414 | //方法 | ||
| 415 | if (node.children == null || node.children == "null") { | ||
| 416 | delete node.children; | ||
| 417 | } | ||
| 418 | return { | ||
| 419 | id: node.dcode, | ||
| 420 | label: node.dname, | ||
| 421 | }; | ||
| 422 | }, | ||
| 423 | mjdw: "1", | ||
| 424 | value2: { | ||
| 425 | id: "520000198407304275", | ||
| 426 | user: "史平", | ||
| 427 | }, | ||
| 428 | props: { | ||
| 429 | label: "user", | ||
| 430 | value: "id", | ||
| 431 | keyword: "keyword", | ||
| 432 | }, | ||
| 433 | //表单是否可操作 | ||
| 434 | viewEdit: true, | ||
| 435 | key: 0, | ||
| 436 | disabled: true, | ||
| 437 | czrOptions: [], | ||
| 438 | czr: "", | ||
| 439 | ruleForm: {}, | ||
| 440 | //传递参数 | ||
| 441 | propsParam: {}, | ||
| 442 | rules: { | ||
| 443 | 'tdsyq.djyy': [ | ||
| 444 | { required: true, message: '请输入登记原因', trigger: 'blur' } | ||
| 445 | ] | ||
| 446 | } | ||
| 447 | } | ||
| 448 | }, | ||
| 449 | methods: { | ||
| 450 | /** | ||
| 451 | * @description: 更新土地用途信息 | ||
| 452 | * @param {*} val | ||
| 453 | * @author: renchao | ||
| 454 | */ | ||
| 455 | upDateTdytxxList (val) { | ||
| 456 | this.ruleForm.tdytqxList && (this.ruleForm.tdytqxList = _.cloneDeep(val)); | ||
| 457 | this.key++; | ||
| 458 | }, | ||
| 459 | /** | ||
| 460 | * @description: 更新权利人信息 | ||
| 461 | * @param {*} val | ||
| 462 | * @author: renchao | ||
| 463 | */ | ||
| 464 | upDateQlrxxList (val) { | ||
| 465 | this.ruleForm.qlrList && (this.ruleForm.qlrList = _.cloneDeep(val)); | ||
| 466 | this.czrOptions = this.ruleForm.qlrList; | ||
| 467 | this.num = 0 | ||
| 468 | this.ruleForm.qlrList.forEach(item => { | ||
| 469 | if (item.id == this.czr) { | ||
| 470 | this.num++ | ||
| 471 | } | ||
| 472 | }) | ||
| 473 | if (this.num == 0) { | ||
| 474 | this.czr = '' | ||
| 475 | } | ||
| 476 | }, | ||
| 477 | /** | ||
| 478 | * @description: 更新义务人信息 | ||
| 479 | * @param {*} val | ||
| 480 | * @author: renchao | ||
| 481 | */ | ||
| 482 | upDateYwrxxList (val) { | ||
| 483 | this.ruleForm.ywrList && (this.ruleForm.ywrList = _.cloneDeep(val)); | ||
| 484 | this.key++; | ||
| 485 | }, | ||
| 486 | /** | ||
| 487 | * @description: 是否持证人变化 | ||
| 488 | * @param {*} val | ||
| 489 | * @author: renchao | ||
| 490 | */ | ||
| 491 | updaterow () { | ||
| 492 | this.czr = ""; | ||
| 493 | }, | ||
| 494 | /** | ||
| 495 | * @description: onSubmit | ||
| 496 | * @author: renchao | ||
| 497 | */ | ||
| 498 | onSubmit () { | ||
| 499 | let that = this; | ||
| 500 | let arr = this.ruleForm.tdytqxList.filter((item) => !item.yt); | ||
| 501 | if (arr.length > 0) { | ||
| 502 | this.$message({ | ||
| 503 | showClose: true, | ||
| 504 | message: "土地用途不能为空", | ||
| 505 | type: "error", | ||
| 506 | }); | ||
| 507 | return false; | ||
| 508 | } | ||
| 509 | if (this.ruleForm.qlrList.length == 0) { | ||
| 510 | this.$message({ | ||
| 511 | showClose: true, | ||
| 512 | message: "请确认权利人信息", | ||
| 513 | type: "error", | ||
| 514 | }); | ||
| 515 | return false; | ||
| 516 | } | ||
| 517 | |||
| 518 | if (this.ruleForm.sldy.gyfs == "0") { | ||
| 519 | if (this.ruleForm.qlrList.length > 1) { | ||
| 520 | this.$message({ | ||
| 521 | showClose: true, | ||
| 522 | message: "共有方式:单独所有,权利人只能是一个人", | ||
| 523 | type: "error", | ||
| 524 | }); | ||
| 525 | return false; | ||
| 526 | } | ||
| 527 | this.ruleForm.qlrList[0].sfczr = "1"; | ||
| 528 | } else { | ||
| 529 | if (this.ruleForm.qlrList.length <= 1) { | ||
| 530 | this.$message({ | ||
| 531 | showClose: true, | ||
| 532 | message: | ||
| 533 | "共有方式:共同所有,按份所有,其他所有,权利人必须是两个以上", | ||
| 534 | type: "error", | ||
| 535 | }); | ||
| 536 | return false; | ||
| 537 | } | ||
| 538 | //是否分别持证 | ||
| 539 | if (this.ruleForm.sldy.sqfbcz == "1") { | ||
| 540 | //是 | ||
| 541 | this.ruleForm.qlrList.forEach((item, index) => { | ||
| 542 | item.sfczr = "1"; | ||
| 543 | }) | ||
| 544 | } else { | ||
| 545 | if (that.czr === '') { | ||
| 546 | that.$message({ | ||
| 547 | showClose: true, | ||
| 548 | message: "请选择持证人", | ||
| 549 | type: "error" | ||
| 550 | }) | ||
| 551 | return false | ||
| 552 | } | ||
| 553 | this.ruleForm.qlrList.forEach((item, index) => { | ||
| 554 | if (item.id == that.czr) { | ||
| 555 | item.sfczr = "1" | ||
| 556 | } else { | ||
| 557 | item.sfczr = "0" | ||
| 558 | } | ||
| 559 | }) | ||
| 560 | } | ||
| 561 | } | ||
| 562 | /** | ||
| 563 | * @description: saveData | ||
| 564 | * @author: renchao | ||
| 565 | */ | ||
| 566 | |||
| 567 | this.$refs['ruleForm'].validate((valid) => { | ||
| 568 | if (valid) { | ||
| 569 | saveData(this.ruleForm).then((res) => { | ||
| 570 | if (res.code === 200) { | ||
| 571 | that.$message({ | ||
| 572 | showClose: true, | ||
| 573 | message: "保存成功!", | ||
| 574 | type: "success", | ||
| 575 | }); | ||
| 576 | that.$store.dispatch("user/refreshPage", true); | ||
| 577 | } else { | ||
| 578 | that.$message({ | ||
| 579 | showClose: true, | ||
| 580 | message: res.message, | ||
| 581 | type: "error" | ||
| 582 | }) | ||
| 583 | } | ||
| 584 | }) | ||
| 585 | } else { | ||
| 586 | this.$message({ | ||
| 587 | showClose: true, | ||
| 588 | message: "请输入登记原因", | ||
| 589 | type: "error" | ||
| 590 | }); | ||
| 591 | return false; | ||
| 592 | } | ||
| 593 | }); | ||
| 594 | } | ||
| 595 | } | ||
| 596 | } | ||
| 597 | </script> | ||
| 598 | <style scoped lang="scss"> | ||
| 599 | @import "~@/styles/public.scss"; | ||
| 600 | @import "~@/styles/slxx/slxx.scss"; | ||
| 601 | </style> |
src/views/ywbl/slsqxx/ygdj/slxx.vue
deleted
100644 → 0
| 1 | <template> | ||
| 2 | <!-- 受理信息 --> | ||
| 3 | <div class="slxx"> | ||
| 4 | <el-form | ||
| 5 | :model="ruleForm" | ||
| 6 | :rules="rules" | ||
| 7 | v-Loading="loading" | ||
| 8 | ref="ruleForm" | ||
| 9 | :label-position="flag ? 'top' : ''" | ||
| 10 | :inline="flag" | ||
| 11 | label-width="120px"> | ||
| 12 | <div class="slxx_con" :class="flag ? 'formMarginBot0' : ''"> | ||
| 13 | <div class="slxx_title title-block"> | ||
| 14 | 申请业务信息 | ||
| 15 | <div class="triangle"></div> | ||
| 16 | </div> | ||
| 17 | <el-row :gutter="10" v-if="ruleForm.slsq"> | ||
| 18 | <el-col :span="8"> | ||
| 19 | <el-form-item label="业务号:"> | ||
| 20 | <el-input disabled v-model="ruleForm.flow.ywh"></el-input> | ||
| 21 | </el-form-item> | ||
| 22 | </el-col> | ||
| 23 | <el-col :span="8"> | ||
| 24 | <el-form-item label="受理人员:"> | ||
| 25 | <el-input disabled v-model="ruleForm.slsq.slry"></el-input> | ||
| 26 | </el-form-item> | ||
| 27 | </el-col> | ||
| 28 | <el-col :span="8"> | ||
| 29 | <el-form-item label="受理时间:"> | ||
| 30 | <el-input disabled v-model="ruleForm.slsq.slsj"></el-input> | ||
| 31 | </el-form-item> | ||
| 32 | </el-col> | ||
| 33 | </el-row> | ||
| 34 | <el-row :gutter="10" v-if="ruleForm.slsq"> | ||
| 35 | <el-col :span="8"> | ||
| 36 | <el-form-item label="权利类型:"> | ||
| 37 | <el-input disabled v-model="ruleForm.sldy.qllxmc"></el-input> | ||
| 38 | </el-form-item> | ||
| 39 | </el-col> | ||
| 40 | <el-col :span="8"> | ||
| 41 | <el-form-item label="登记类型:"> | ||
| 42 | <el-input disabled v-model="ruleForm.sldy.djlxmc"></el-input> | ||
| 43 | </el-form-item> | ||
| 44 | </el-col> | ||
| 45 | <el-col :span="8"> | ||
| 46 | <el-form-item label="登记情形:"> | ||
| 47 | <el-input disabled v-model="ruleForm.slsq.djqxmc"></el-input> | ||
| 48 | </el-form-item> | ||
| 49 | </el-col> | ||
| 50 | </el-row> | ||
| 51 | <div class="slxx_title title-block"> | ||
| 52 | 不动产情况 | ||
| 53 | <div class="triangle"></div> | ||
| 54 | </div> | ||
| 55 | <el-row :gutter="10" v-if="ruleForm.qlxx"> | ||
| 56 | <el-col :span="8"> | ||
| 57 | <el-form-item label="原不动产证号:"> | ||
| 58 | <el-input disabled v-model="ruleForm.sldy.ybdcqzsh"></el-input> | ||
| 59 | </el-form-item> | ||
| 60 | </el-col> | ||
| 61 | <el-col :span="8"> | ||
| 62 | <el-form-item label="不动产单元号:"> | ||
| 63 | <el-input disabled v-model="ruleForm.qlxx.bdcdyh"></el-input> | ||
| 64 | </el-form-item> | ||
| 65 | </el-col> | ||
| 66 | <el-col :span="8"> | ||
| 67 | <el-form-item label="坐落:"> | ||
| 68 | <el-input disabled v-model="ruleForm.sldy.zl"></el-input> | ||
| 69 | </el-form-item> | ||
| 70 | </el-col> | ||
| 71 | </el-row> | ||
| 72 | <el-row :gutter="10"> | ||
| 73 | <el-col :span="8"> | ||
| 74 | <el-form-item label="预告登记种类:"> | ||
| 75 | <el-input disabled v-model="ruleForm.ygdj.ygdjzlmc"></el-input> | ||
| 76 | </el-form-item> | ||
| 77 | </el-col> | ||
| 78 | <el-col :span="8"> | ||
| 79 | <el-form-item label="土地使用权人:"> | ||
| 80 | <el-input disabled v-model="ruleForm.ygdj.tdsyqr"></el-input> | ||
| 81 | </el-form-item> | ||
| 82 | </el-col> | ||
| 83 | <el-col :span="8"> | ||
| 84 | <el-form-item label="房屋性质:"> | ||
| 85 | <el-select v-model="ruleForm.ygdj.fwxz" :disabled="!viewEdit"> | ||
| 86 | <el-option | ||
| 87 | v-for="item in dictData['A19']" | ||
| 88 | :key="item.dcode" | ||
| 89 | :label="item.dname" | ||
| 90 | :value="item.dcode"> | ||
| 91 | </el-option> | ||
| 92 | </el-select> | ||
| 93 | </el-form-item> | ||
| 94 | </el-col> | ||
| 95 | </el-row> | ||
| 96 | <el-row :gutter="10" v-if="ruleForm.qlxx"> | ||
| 97 | <el-col :span="8"> | ||
| 98 | <el-form-item label="房屋用途:"> | ||
| 99 | <el-select v-model="ruleForm.ygdj.ghyt" :disabled="!viewEdit"> | ||
| 100 | <el-option | ||
| 101 | v-for="item in dictData['A17']" | ||
| 102 | :key="item.dcode" | ||
| 103 | :label="item.dname" | ||
| 104 | :value="item.dcode"> | ||
| 105 | </el-option> | ||
| 106 | </el-select> | ||
| 107 | </el-form-item> | ||
| 108 | </el-col> | ||
| 109 | <el-col :span="8"> | ||
| 110 | <el-form-item label="所在层:"> | ||
| 111 | <el-input maxlength="20" :disabled="!viewEdit" v-model="ruleForm.ygdj.szc"></el-input> | ||
| 112 | </el-form-item> | ||
| 113 | </el-col> | ||
| 114 | <el-col :span="8"> | ||
| 115 | <el-form-item label="总层数:"> | ||
| 116 | <el-input | ||
| 117 | :disabled="!viewEdit" | ||
| 118 | maxlength="4" | ||
| 119 | v-model.number="ruleForm.ygdj.zcs" | ||
| 120 | oninput="value=value.replace(/[^0-9]/g,'')"></el-input> | ||
| 121 | </el-form-item> | ||
| 122 | </el-col> | ||
| 123 | </el-row> | ||
| 124 | <el-row :gutter="10" v-if="ruleForm.qlxx"> | ||
| 125 | <el-col :span="8"> | ||
| 126 | <el-form-item label="房屋结构:"> | ||
| 127 | <el-select v-model="ruleForm.ygdj.fwjg" :disabled="!viewEdit"> | ||
| 128 | <el-option | ||
| 129 | v-for="item in dictData['A46']" | ||
| 130 | :key="item.dcode" | ||
| 131 | :label="item.dname" | ||
| 132 | :value="item.dcode"> | ||
| 133 | </el-option> | ||
| 134 | </el-select> | ||
| 135 | </el-form-item> | ||
| 136 | </el-col> | ||
| 137 | |||
| 138 | <el-col :span="8"> | ||
| 139 | <el-form-item label="建筑面积:"> | ||
| 140 | <div class="flex"> | ||
| 141 | <el-input | ||
| 142 | maxlength="12" | ||
| 143 | v-model="ruleForm.ygdj.jzmj" | ||
| 144 | :disabled="!viewEdit" | ||
| 145 | oninput="value = (value.match(/^\d*(\.?\d{0,2})/g)[0]) || null"></el-input> | ||
| 146 | <el-select :disabled="!viewEdit" v-model="mjdw" style="width: 68px"> | ||
| 147 | <el-option | ||
| 148 | v-for="item in dictData['A7']" | ||
| 149 | :key="item.dcode" | ||
| 150 | :label="item.dname" | ||
| 151 | :value="item.dcode"> | ||
| 152 | </el-option> | ||
| 153 | </el-select> | ||
| 154 | </div> | ||
| 155 | </el-form-item> | ||
| 156 | </el-col> | ||
| 157 | <el-col :span="8"> | ||
| 158 | <el-form-item label="取得价格:"> | ||
| 159 | <div class="flex"> | ||
| 160 | <el-input | ||
| 161 | :disabled="!viewEdit" | ||
| 162 | maxlength="11" | ||
| 163 | v-model="ruleForm.ygdj.qdjg" | ||
| 164 | oninput="value = (value.match(/^\d*(\.?\d{0,2})/g)[0]) || null"></el-input> | ||
| 165 | <el-select | ||
| 166 | v-model="ruleForm.ygdj.jedw" | ||
| 167 | :disabled="!viewEdit" | ||
| 168 | style="width: 68px"> | ||
| 169 | <el-option | ||
| 170 | v-for="item in dictData['A57']" | ||
| 171 | :key="item.dcode" | ||
| 172 | :label="item.dname" | ||
| 173 | :value="item.dcode"> | ||
| 174 | </el-option> | ||
| 175 | </el-select> | ||
| 176 | </div> | ||
| 177 | </el-form-item> | ||
| 178 | </el-col> | ||
| 179 | </el-row> | ||
| 180 | <el-row :gutter="10"> | ||
| 181 | <el-col :span="24"> | ||
| 182 | <el-form-item label="附记:"> | ||
| 183 | <el-input | ||
| 184 | :disabled="!viewEdit" | ||
| 185 | v-model="ruleForm.ygdj.fj" | ||
| 186 | type="textarea" | ||
| 187 | maxlength="500" | ||
| 188 | show-word-limit></el-input> | ||
| 189 | </el-form-item> | ||
| 190 | </el-col> | ||
| 191 | </el-row> | ||
| 192 | <div class="slxx_title title-block"> | ||
| 193 | 权利人信息 | ||
| 194 | <div class="triangle"></div> | ||
| 195 | </div> | ||
| 196 | <el-row :gutter="10"> | ||
| 197 | <el-col :span="12" v-if="ruleForm.qlxx"> | ||
| 198 | <el-form-item label="共有方式:"> | ||
| 199 | <el-radio-group | ||
| 200 | :disabled="!viewEdit" | ||
| 201 | v-model="ruleForm.sldy.gyfs"> | ||
| 202 | <el-radio label="0">单独所有</el-radio> | ||
| 203 | <el-radio label="1">共同共有</el-radio> | ||
| 204 | <el-radio label="2">按份所有</el-radio> | ||
| 205 | <el-radio label="3">其它共有</el-radio> | ||
| 206 | </el-radio-group> | ||
| 207 | </el-form-item> | ||
| 208 | </el-col> | ||
| 209 | <el-col :span="6" v-show="ruleForm.sldy.gyfs != '0'"> | ||
| 210 | <el-form-item label="是否分别持证:"> | ||
| 211 | <el-radio-group | ||
| 212 | v-model="ruleForm.sldy.sqfbcz" | ||
| 213 | :disabled="!viewEdit" | ||
| 214 | @input="updaterow()"> | ||
| 215 | <el-radio :label="1">是</el-radio> | ||
| 216 | <el-radio :label="0">否</el-radio> | ||
| 217 | </el-radio-group> | ||
| 218 | </el-form-item> | ||
| 219 | </el-col> | ||
| 220 | <el-col | ||
| 221 | :span="6" | ||
| 222 | v-show="ruleForm.sldy.sqfbcz == '0' && ruleForm.sldy.gyfs != '0'"> | ||
| 223 | <el-form-item label="持证人:"> | ||
| 224 | <el-select | ||
| 225 | v-model="czr" | ||
| 226 | placeholder="持证人" | ||
| 227 | :disabled="!viewEdit"> | ||
| 228 | <el-option | ||
| 229 | v-for="(item,index) in czrOptions" | ||
| 230 | :key="index" | ||
| 231 | :label="item.sqrmc" | ||
| 232 | :value="item.id"> | ||
| 233 | </el-option> | ||
| 234 | </el-select> | ||
| 235 | </el-form-item> | ||
| 236 | </el-col> | ||
| 237 | </el-row> | ||
| 238 | <qlrCommonTable | ||
| 239 | @upDateQlrxxList="upDateQlrxxList" | ||
| 240 | :disabled="viewEdit" | ||
| 241 | :tableData="ruleForm.qlrList" | ||
| 242 | :gyfs="ruleForm.sldy.gyfs" /> | ||
| 243 | <div class="slxx_title title-block"> | ||
| 244 | 义务人信息 | ||
| 245 | <div class="triangle"></div> | ||
| 246 | </div> | ||
| 247 | <ywrCommonTable | ||
| 248 | @upDateQlrxxList="upDateYwrxxList" | ||
| 249 | :disabled="viewEdit" | ||
| 250 | :tableData="ruleForm.ywrList" | ||
| 251 | :gyfs="ruleForm.sldy.gyfs" /> | ||
| 252 | <div class="slxx_title title-block"> | ||
| 253 | 登记原因 | ||
| 254 | <div class="triangle"></div> | ||
| 255 | </div> | ||
| 256 | <el-row :gutter="10"> | ||
| 257 | <el-col> | ||
| 258 | <el-form-item v-if="ruleForm.sldy.djlx=='400'" label="注销登记原因:" prop="djyy"> | ||
| 259 | <el-input | ||
| 260 | class="textArea" | ||
| 261 | type="textarea" | ||
| 262 | maxlength="500" | ||
| 263 | show-word-limit | ||
| 264 | :disabled="!viewEdit" | ||
| 265 | v-model="ruleForm.ygdj.zxyy"> | ||
| 266 | </el-input> | ||
| 267 | </el-form-item> | ||
| 268 | <el-form-item v-else label="登记原因:" prop="ygdj.djyy"> | ||
| 269 | <el-input | ||
| 270 | class="textArea" | ||
| 271 | type="textarea" | ||
| 272 | maxlength="500" | ||
| 273 | show-word-limit | ||
| 274 | :disabled="!viewEdit" | ||
| 275 | v-model="ruleForm.ygdj.djyy"> | ||
| 276 | </el-input> | ||
| 277 | </el-form-item> | ||
| 278 | </el-col> | ||
| 279 | </el-row> | ||
| 280 | </div> | ||
| 281 | <el-row class="btn" v-if="isSave"> | ||
| 282 | <el-form-item> | ||
| 283 | <el-button type="primary" @click="onSubmit">保存</el-button> | ||
| 284 | </el-form-item> | ||
| 285 | </el-row> | ||
| 286 | </el-form> | ||
| 287 | </div> | ||
| 288 | </template> | ||
| 289 | <script> | ||
| 290 | import ywmix from "@/views/ywbl/mixin/index"; | ||
| 291 | import qlrCommonTable from "@/views/workflow/components/qlrCommonTable"; | ||
| 292 | import ywrCommonTable from "@/views/workflow/components/ywrCommonTable"; | ||
| 293 | import { Init, saveData } from "@/api/workflow/ygdjFlow.js"; | ||
| 294 | import { mapGetters } from "vuex"; | ||
| 295 | export default { | ||
| 296 | mixins: [ywmix], | ||
| 297 | mounted () { | ||
| 298 | let that = this | ||
| 299 | this.viewEdit = this.$parent.currentSelectTab.ableOperation; | ||
| 300 | this.propsParam = this.$attrs; | ||
| 301 | this.loading = true | ||
| 302 | var formdata = new FormData(); | ||
| 303 | formdata.append("bsmSldy", this.propsParam.bsmSldy); | ||
| 304 | formdata.append("djlx", this.propsParam.djlx); | ||
| 305 | formdata.append("isEdit", this.viewEdit); | ||
| 306 | Init(formdata).then((res) => { | ||
| 307 | setTimeout(() => { | ||
| 308 | this.loading = false | ||
| 309 | }, 200) | ||
| 310 | if (res.code === 200 && res.result) { | ||
| 311 | this.ruleForm = res.result; | ||
| 312 | this.ruleForm.qlrList.forEach((item) => { | ||
| 313 | item.id = item.bsmSqr | ||
| 314 | if (item.sfczr == '1') { | ||
| 315 | that.czr = item.bsmSqr | ||
| 316 | } | ||
| 317 | }) | ||
| 318 | that.czrOptions = this.ruleForm.qlrList | ||
| 319 | that.isSave = that.viewEdit | ||
| 320 | } else { | ||
| 321 | that.isSave = false | ||
| 322 | that.$confirm(res.message, '提示', { | ||
| 323 | cancelButtonText: '取消', | ||
| 324 | showConfirmButton: false, | ||
| 325 | type: 'warning' | ||
| 326 | }) | ||
| 327 | } | ||
| 328 | }).catch(() => { | ||
| 329 | this.isSave = false | ||
| 330 | this.loading = false | ||
| 331 | }) | ||
| 332 | }, | ||
| 333 | components: { qlrCommonTable, ywrCommonTable }, | ||
| 334 | computed: { | ||
| 335 | ...mapGetters(["dictData", "flag"]) | ||
| 336 | }, | ||
| 337 | data () { | ||
| 338 | return { | ||
| 339 | isSave: true, | ||
| 340 | loading: false, | ||
| 341 | mjdw: "1", | ||
| 342 | //表单是否可操作 | ||
| 343 | viewEdit: true, | ||
| 344 | disabled: true, | ||
| 345 | tdytOption: [], | ||
| 346 | czrOptions: [], | ||
| 347 | czr: "", | ||
| 348 | ruleForm: { | ||
| 349 | qlxx: {}, | ||
| 350 | sldy: {}, | ||
| 351 | slsq: {}, | ||
| 352 | ygdj: {}, | ||
| 353 | zdjbxx: {}, | ||
| 354 | }, | ||
| 355 | //传递参数 | ||
| 356 | propsParam: this.$attrs, | ||
| 357 | rules: { | ||
| 358 | 'ygdj.djyy': [ | ||
| 359 | { required: true, message: '请输入登记原因', trigger: 'blur' } | ||
| 360 | ] | ||
| 361 | } | ||
| 362 | } | ||
| 363 | }, | ||
| 364 | methods: { | ||
| 365 | /** | ||
| 366 | * @description: 更新权利人信息 | ||
| 367 | * @param {*} val | ||
| 368 | * @author: renchao | ||
| 369 | */ | ||
| 370 | upDateQlrxxList (val) { | ||
| 371 | this.ruleForm.qlrList = _.cloneDeep(val); | ||
| 372 | this.czrOptions = this.ruleForm.qlrList; | ||
| 373 | this.num = 0 | ||
| 374 | this.ruleForm.qlrList.forEach(item => { | ||
| 375 | if (item.id == this.czr) { | ||
| 376 | this.num++ | ||
| 377 | } | ||
| 378 | }) | ||
| 379 | if (this.num == 0) { | ||
| 380 | this.czr = '' | ||
| 381 | } | ||
| 382 | }, | ||
| 383 | /** | ||
| 384 | * @description: 更新业务人信息 | ||
| 385 | * @param {*} val | ||
| 386 | * @author: renchao | ||
| 387 | */ | ||
| 388 | upDateYwrxxList (val) { | ||
| 389 | this.ruleForm.ywrList = _.cloneDeep(val); | ||
| 390 | }, | ||
| 391 | /** | ||
| 392 | * @description: 是否持证人变化 | ||
| 393 | * @param {*} val | ||
| 394 | * @author: renchao | ||
| 395 | */ | ||
| 396 | updaterow () { | ||
| 397 | this.czr = ""; | ||
| 398 | }, | ||
| 399 | /** | ||
| 400 | * @description: onSubmit | ||
| 401 | * @author: renchao | ||
| 402 | */ | ||
| 403 | onSubmit () { | ||
| 404 | let that = this; | ||
| 405 | if (this.ruleForm.qlrList.length == 0) { | ||
| 406 | this.$message({ | ||
| 407 | showClose: true, | ||
| 408 | message: "请确认权利人信息", | ||
| 409 | type: "error", | ||
| 410 | }); | ||
| 411 | return false; | ||
| 412 | } | ||
| 413 | |||
| 414 | if (this.ruleForm.sldy.gyfs == "0") { | ||
| 415 | if (this.ruleForm.qlrList.length > 1) { | ||
| 416 | this.$message({ | ||
| 417 | showClose: true, | ||
| 418 | message: "共有方式:单独所有,权利人只能是一个人", | ||
| 419 | type: "error", | ||
| 420 | }); | ||
| 421 | return false; | ||
| 422 | } | ||
| 423 | this.ruleForm.qlrList[0].sfczr = "1"; | ||
| 424 | } else { | ||
| 425 | if (this.ruleForm.qlrList.length <= 1) { | ||
| 426 | this.$message({ | ||
| 427 | showClose: true, | ||
| 428 | message: | ||
| 429 | "共有方式:共同所有,按份所有,其他所有,权利人必须是两个以上", | ||
| 430 | type: "error", | ||
| 431 | }); | ||
| 432 | return false; | ||
| 433 | } | ||
| 434 | //是否分别持证 | ||
| 435 | if (this.ruleForm.sldy.sqfbcz == "1") { | ||
| 436 | //是 | ||
| 437 | this.ruleForm.qlrList.forEach((item, index) => { | ||
| 438 | item.sfczr = "1"; | ||
| 439 | }); | ||
| 440 | } else { | ||
| 441 | if (that.czr === '') { | ||
| 442 | that.$message({ | ||
| 443 | showClose: true, | ||
| 444 | message: "请选择持证人", | ||
| 445 | type: "error" | ||
| 446 | }); | ||
| 447 | return false; | ||
| 448 | } | ||
| 449 | this.ruleForm.qlrList.forEach((item, index) => { | ||
| 450 | if (item.id == that.czr) { | ||
| 451 | item.sfczr = "1" | ||
| 452 | } else { | ||
| 453 | item.sfczr = "0" | ||
| 454 | } | ||
| 455 | }) | ||
| 456 | } | ||
| 457 | } | ||
| 458 | this.$refs['ruleForm'].validate((valid) => { | ||
| 459 | if (valid) { | ||
| 460 | that.$store.dispatch("user/refreshPage", false); | ||
| 461 | saveData(that.ruleForm).then((res) => { | ||
| 462 | if (res.code === 200) { | ||
| 463 | that.$message({ | ||
| 464 | showClose: true, | ||
| 465 | message: "保存成功!", | ||
| 466 | type: "success", | ||
| 467 | }); | ||
| 468 | that.$store.dispatch("user/refreshPage", true); | ||
| 469 | } else { | ||
| 470 | that.$message({ | ||
| 471 | showClose: true, | ||
| 472 | message: res.message, | ||
| 473 | type: "error", | ||
| 474 | }); | ||
| 475 | } | ||
| 476 | }) | ||
| 477 | } else { | ||
| 478 | that.$message({ | ||
| 479 | showClose: true, | ||
| 480 | message: "请输入登记原因", | ||
| 481 | type: "error" | ||
| 482 | }) | ||
| 483 | return false | ||
| 484 | } | ||
| 485 | }) | ||
| 486 | } | ||
| 487 | } | ||
| 488 | } | ||
| 489 | </script> | ||
| 490 | <style scoped lang="scss"> | ||
| 491 | @import "~@/styles/public.scss"; | ||
| 492 | |||
| 493 | /deep/.el-form { | ||
| 494 | display: flex; | ||
| 495 | flex-direction: column; | ||
| 496 | height: calc(100vh - 130px); | ||
| 497 | } | ||
| 498 | |||
| 499 | /deep/.el-form-item__label { | ||
| 500 | padding: 0; | ||
| 501 | } | ||
| 502 | |||
| 503 | /deep/.el-radio { | ||
| 504 | margin-right: 10px; | ||
| 505 | } | ||
| 506 | |||
| 507 | /deep/.el-select { | ||
| 508 | width: 100%; | ||
| 509 | } | ||
| 510 | |||
| 511 | /deep/.el-form-item { | ||
| 512 | margin-bottom: 3px; | ||
| 513 | } | ||
| 514 | |||
| 515 | .marginBot0 { | ||
| 516 | margin-bottom: 0 !important; | ||
| 517 | } | ||
| 518 | |||
| 519 | .slxx { | ||
| 520 | box-sizing: border-box; | ||
| 521 | } | ||
| 522 | |||
| 523 | .slxx_con { | ||
| 524 | flex: 1; | ||
| 525 | height: 100%; | ||
| 526 | background-color: #ffffff; | ||
| 527 | overflow-y: auto; | ||
| 528 | padding-right: 3px; | ||
| 529 | overflow-x: hidden; | ||
| 530 | } | ||
| 531 | |||
| 532 | .submit_btn { | ||
| 533 | height: 50px; | ||
| 534 | } | ||
| 535 | |||
| 536 | .btn { | ||
| 537 | text-align: center; | ||
| 538 | padding-top: 10px; | ||
| 539 | height: 36px; | ||
| 540 | background-color: #ffffff; | ||
| 541 | padding: 5px 0; | ||
| 542 | } | ||
| 543 | |||
| 544 | .textArea { | ||
| 545 | /deep/.el-textarea__inner { | ||
| 546 | min-height: 90px !important; | ||
| 547 | } | ||
| 548 | } | ||
| 549 | |||
| 550 | /deep/.el-form-item__label { | ||
| 551 | padding-bottom: 0px; | ||
| 552 | } | ||
| 553 | </style> |
| 1 | <template> | ||
| 2 | <!-- 受理信息 --> | ||
| 3 | <div class="slxx"> | ||
| 4 | <el-form | ||
| 5 | :model="ruleForm" | ||
| 6 | :rules="rules" | ||
| 7 | v-Loading="loading" | ||
| 8 | ref="ruleForm" | ||
| 9 | :label-position="flag ? 'top' : ''" | ||
| 10 | :inline="flag" | ||
| 11 | label-width="120px"> | ||
| 12 | <div class="slxx_con" :class="flag ? 'formMarginBot0' : ''"> | ||
| 13 | <div class="slxx_title title-block"> | ||
| 14 | 申请业务信息 | ||
| 15 | <div class="triangle"></div> | ||
| 16 | </div> | ||
| 17 | <el-row :gutter="10" v-if="ruleForm.slsq"> | ||
| 18 | <el-col :span="8"> | ||
| 19 | <el-form-item label="业务号:"> | ||
| 20 | <el-input disabled v-model="ruleForm.slsq.ywh"></el-input> | ||
| 21 | </el-form-item> | ||
| 22 | </el-col> | ||
| 23 | <el-col :span="8"> | ||
| 24 | <el-form-item label="受理人员:"> | ||
| 25 | <el-input disabled v-model="ruleForm.slsq.slry"></el-input> | ||
| 26 | </el-form-item> | ||
| 27 | </el-col> | ||
| 28 | <el-col :span="8"> | ||
| 29 | <el-form-item label="受理时间:"> | ||
| 30 | <el-input disabled v-model="ruleForm.slsq.slsj"></el-input> | ||
| 31 | </el-form-item> | ||
| 32 | </el-col> | ||
| 33 | </el-row> | ||
| 34 | <el-row :gutter="10" v-if="ruleForm.slsq"> | ||
| 35 | <el-col :span="8"> | ||
| 36 | <el-form-item label="权利类型:"> | ||
| 37 | <el-input disabled v-model="ruleForm.slsq.qllxmc"></el-input> | ||
| 38 | </el-form-item> | ||
| 39 | </el-col> | ||
| 40 | <el-col :span="8"> | ||
| 41 | <el-form-item label="登记类型:"> | ||
| 42 | <el-input disabled v-model="ruleForm.slsq.djlxmc"></el-input> | ||
| 43 | </el-form-item> | ||
| 44 | </el-col> | ||
| 45 | <el-col :span="8"> | ||
| 46 | <el-form-item label="登记情形:"> | ||
| 47 | <el-input disabled v-model="ruleForm.slsq.djqxmc"></el-input> | ||
| 48 | </el-form-item> | ||
| 49 | </el-col> | ||
| 50 | </el-row> | ||
| 51 | <div class="slxx_title title-block"> | ||
| 52 | <el-row> | ||
| 53 | <el-col :span="16"> | ||
| 54 | 不动产单元情况 | ||
| 55 | </el-col> | ||
| 56 | <el-col :span="4"> | ||
| 57 | <el-button @click="compare">变化情况对比+</el-button> | ||
| 58 | </el-col> | ||
| 59 | <el-col :span="4" v-if="ruleForm.sldy.djlx=='500'"> | ||
| 60 | <el-form-item label="是否创建证书:" style="height:24px"> | ||
| 61 | <el-radio-group v-model="ruleForm.sldy.sfxysczs"> | ||
| 62 | <el-radio label="1">是</el-radio> | ||
| 63 | <el-radio label="0">否</el-radio> | ||
| 64 | </el-radio-group> | ||
| 65 | </el-form-item> | ||
| 66 | </el-col> | ||
| 67 | </el-row> | ||
| 68 | <div class="triangle"></div> | ||
| 69 | </div> | ||
| 70 | <el-row :gutter="10" v-if="ruleForm.qlxx"> | ||
| 71 | <el-col :span="8"> | ||
| 72 | <el-form-item label="不动产单元号:"> | ||
| 73 | <el-input disabled v-model="ruleForm.qlxx.bdcdyh"></el-input> | ||
| 74 | </el-form-item> | ||
| 75 | </el-col> | ||
| 76 | <el-col :span="16"> | ||
| 77 | <el-form-item label="坐落:"> | ||
| 78 | <el-input disabled v-model="ruleForm.sldy.zl"></el-input> | ||
| 79 | </el-form-item> | ||
| 80 | </el-col> | ||
| 81 | </el-row> | ||
| 82 | <el-row :gutter="10"> | ||
| 83 | <el-col :span="8"> | ||
| 84 | <el-form-item label="预告登记种类:"> | ||
| 85 | <el-input disabled v-model="ruleForm.ygdj.ygdjzlmc"></el-input> | ||
| 86 | </el-form-item> | ||
| 87 | </el-col> | ||
| 88 | <el-col :span="8"> | ||
| 89 | <el-form-item label="规划用途:"> | ||
| 90 | <el-input disabled v-model="ruleForm.ygdj.ytmc"></el-input> | ||
| 91 | </el-form-item> | ||
| 92 | </el-col> | ||
| 93 | <el-col :span="8"> | ||
| 94 | <el-form-item label="房屋性质:"> | ||
| 95 | <el-input disabled v-model="ruleForm.ygdj.fwxzmc"></el-input> | ||
| 96 | </el-form-item> | ||
| 97 | </el-col> | ||
| 98 | </el-row> | ||
| 99 | <el-row :gutter="10" v-if="ruleForm.qlxx"> | ||
| 100 | <el-col :span="8"> | ||
| 101 | <el-form-item label="房屋结构:"> | ||
| 102 | <el-input disabled v-model="ruleForm.ygdj.fwjgmc"></el-input> | ||
| 103 | </el-form-item> | ||
| 104 | </el-col> | ||
| 105 | <el-col :span="8"> | ||
| 106 | <el-form-item label="建筑面积:"> | ||
| 107 | <el-input disabled v-model="ruleForm.ygdj.jzmj"></el-input> | ||
| 108 | </el-form-item> | ||
| 109 | </el-col> | ||
| 110 | <el-col :span="8"> | ||
| 111 | <el-form-item label="取得价格:"> | ||
| 112 | <el-input disabled v-model="ruleForm.ygdj.qdjg"></el-input> | ||
| 113 | </el-form-item> | ||
| 114 | </el-col> | ||
| 115 | </el-row> | ||
| 116 | <el-row :gutter="10"> | ||
| 117 | <el-col :span="8"> | ||
| 118 | <el-form-item label="所在层:"> | ||
| 119 | <el-input disabled v-model="ruleForm.ygdj.szc"></el-input> | ||
| 120 | </el-form-item> | ||
| 121 | </el-col> | ||
| 122 | <el-col :span="8"> | ||
| 123 | <el-form-item label="总层数:"> | ||
| 124 | <el-input | ||
| 125 | disabled | ||
| 126 | v-model.number="ruleForm.ygdj.zcs" | ||
| 127 | oninput="value=value.replace(/[^0-9]/g,'')"></el-input> | ||
| 128 | </el-form-item> | ||
| 129 | </el-col> | ||
| 130 | </el-row> | ||
| 131 | <div class="slxx_title title-block"> | ||
| 132 | 权利人信息 | ||
| 133 | <div class="triangle"></div> | ||
| 134 | </div> | ||
| 135 | <el-row :gutter="10"> | ||
| 136 | <el-col :span="12" v-if="ruleForm.qlxx"> | ||
| 137 | <el-form-item label="共有方式:"> | ||
| 138 | <el-radio-group | ||
| 139 | :disabled="!viewEdit" | ||
| 140 | v-model="ruleForm.sldy.gyfs"> | ||
| 141 | <el-radio label="0">单独所有</el-radio> | ||
| 142 | <el-radio label="1">共同共有</el-radio> | ||
| 143 | <el-radio label="2">按份所有</el-radio> | ||
| 144 | <el-radio label="3">其它共有</el-radio> | ||
| 145 | </el-radio-group> | ||
| 146 | </el-form-item> | ||
| 147 | </el-col> | ||
| 148 | <el-col :span="6" v-show="ruleForm.sldy.gyfs != '0'"> | ||
| 149 | <el-form-item label="是否分别持证:"> | ||
| 150 | <el-radio-group | ||
| 151 | v-model="ruleForm.sldy.sqfbcz" | ||
| 152 | :disabled="!viewEdit" | ||
| 153 | @input="updaterow()"> | ||
| 154 | <el-radio :label="1">是</el-radio> | ||
| 155 | <el-radio :label="0">否</el-radio> | ||
| 156 | </el-radio-group> | ||
| 157 | </el-form-item> | ||
| 158 | </el-col> | ||
| 159 | <el-col | ||
| 160 | :span="6" | ||
| 161 | v-show="ruleForm.sldy.sqfbcz == '0' && ruleForm.sldy.gyfs != '0'"> | ||
| 162 | <el-form-item label="持证人:"> | ||
| 163 | <el-select | ||
| 164 | v-model="czr" | ||
| 165 | placeholder="持证人" | ||
| 166 | :disabled="!viewEdit"> | ||
| 167 | <el-option | ||
| 168 | v-for="(item,index) in czrOptions" | ||
| 169 | :key="index" | ||
| 170 | :label="item.sqrmc" | ||
| 171 | :value="item.id"> | ||
| 172 | </el-option> | ||
| 173 | </el-select> | ||
| 174 | </el-form-item> | ||
| 175 | </el-col> | ||
| 176 | </el-row> | ||
| 177 | <qlrCommonTable | ||
| 178 | @upDateQlrxxList="upDateQlrxxList" | ||
| 179 | :tableData="ruleForm.qlrList" | ||
| 180 | :disabled="viewEdit" | ||
| 181 | :gyfs="ruleForm.sldy.gyfs" /> | ||
| 182 | <div class="slxx_title title-block"> | ||
| 183 | 义务人信息 | ||
| 184 | <div class="triangle"></div> | ||
| 185 | </div> | ||
| 186 | <ywrCommonTable | ||
| 187 | @upDateQlrxxList="upDateYwrxxList" | ||
| 188 | :tableData="ruleForm.ywrList" | ||
| 189 | :disabled="viewEdit" | ||
| 190 | :gyfs="ruleForm.sldy.gyfs" /> | ||
| 191 | <div class="slxx_title title-block"> | ||
| 192 | 登记原因 | ||
| 193 | <div class="triangle"></div> | ||
| 194 | </div> | ||
| 195 | <el-row :gutter="10"> | ||
| 196 | <el-col> | ||
| 197 | <el-form-item label="登记原因:" prop="ygdj.djyy"> | ||
| 198 | <el-input | ||
| 199 | class="textArea" | ||
| 200 | type="textarea" | ||
| 201 | maxlength="500" | ||
| 202 | show-word-limit | ||
| 203 | :disabled="!viewEdit" | ||
| 204 | v-model="ruleForm.ygdj.djyy"> | ||
| 205 | </el-input> | ||
| 206 | </el-form-item> | ||
| 207 | </el-col> | ||
| 208 | </el-row> | ||
| 209 | </div> | ||
| 210 | <el-row class="btn" v-if="isSave"> | ||
| 211 | <el-form-item> | ||
| 212 | <el-button type="primary" @click="onSubmit">保存</el-button> | ||
| 213 | </el-form-item> | ||
| 214 | </el-row> | ||
| 215 | </el-form> | ||
| 216 | </div> | ||
| 217 | </template> | ||
| 218 | <script> | ||
| 219 | import ywmix from "@/views/ywbl/mixin/index"; | ||
| 220 | import qlrCommonTable from "@/views/workflow/components/qlrCommonTable"; | ||
| 221 | import ywrCommonTable from "@/views/workflow/components/ywrCommonTable"; | ||
| 222 | import { Init, saveData } from "@/api/workflow/ygdjFlow.js"; | ||
| 223 | import { mapGetters } from "vuex"; | ||
| 224 | export default { | ||
| 225 | mixins: [ywmix], | ||
| 226 | mounted () { | ||
| 227 | let that = this | ||
| 228 | this.viewEdit = this.$parent.currentSelectTab.ableOperation; | ||
| 229 | this.propsParam = this.$attrs; | ||
| 230 | var formdata = new FormData(); | ||
| 231 | this.loading = true | ||
| 232 | formdata.append("bsmSldy", this.propsParam.bsmSldy); | ||
| 233 | formdata.append("djlx", this.propsParam.djlx); | ||
| 234 | formdata.append("isEdit", this.viewEdit); | ||
| 235 | Init(formdata).then((res) => { | ||
| 236 | setTimeout(() => { | ||
| 237 | that.loading = false | ||
| 238 | }, 200) | ||
| 239 | if (res.code === 200 && res.result) { | ||
| 240 | that.ruleForm = res.result; | ||
| 241 | that.ruleForm.qlrList.forEach((item) => { | ||
| 242 | item.id = item.bsmSqr | ||
| 243 | if (item.sfczr == '1') { | ||
| 244 | that.czr = item.bsmSqr | ||
| 245 | } | ||
| 246 | }) | ||
| 247 | that.czrOptions = this.ruleForm.qlrList; | ||
| 248 | that.isSave = that.viewEdit | ||
| 249 | } else { | ||
| 250 | that.isSave = false | ||
| 251 | that.$confirm(res.message, '提示', { | ||
| 252 | cancelButtonText: '取消', | ||
| 253 | showConfirmButton: false, | ||
| 254 | type: 'warning' | ||
| 255 | }) | ||
| 256 | } | ||
| 257 | }).catch(() => { | ||
| 258 | that.isSave = false | ||
| 259 | that.loading = false | ||
| 260 | }) | ||
| 261 | }, | ||
| 262 | components: { qlrCommonTable, ywrCommonTable }, | ||
| 263 | computed: { | ||
| 264 | ...mapGetters(["dictData", "flag"]), | ||
| 265 | }, | ||
| 266 | data () { | ||
| 267 | return { | ||
| 268 | isSave: true, | ||
| 269 | loading: false, | ||
| 270 | //表单是否可操作 | ||
| 271 | viewEdit: true, | ||
| 272 | disabled: true, | ||
| 273 | tdytOption: [], | ||
| 274 | czrOptions: [], | ||
| 275 | czr: "", | ||
| 276 | ruleForm: {}, | ||
| 277 | //传递参数 | ||
| 278 | propsParam: this.$attrs, | ||
| 279 | rules: { | ||
| 280 | 'ygdj.djyy': [ | ||
| 281 | { required: true, message: '请输入登记原因', trigger: 'blur' } | ||
| 282 | ] | ||
| 283 | } | ||
| 284 | } | ||
| 285 | }, | ||
| 286 | methods: { | ||
| 287 | /** | ||
| 288 | * @description: onClick | ||
| 289 | * @author: renchao | ||
| 290 | */ | ||
| 291 | onClick () { | ||
| 292 | this.$popup("房屋信息比对", "ywbl/ygdj/slxxCompareDetai", { | ||
| 293 | formData: { | ||
| 294 | bsmSldy: this.propsParam.bsmSldy, | ||
| 295 | qllx: this.propsParam.qllx, | ||
| 296 | }, | ||
| 297 | }); | ||
| 298 | }, | ||
| 299 | /** | ||
| 300 | * @description: 更新权利人信息 | ||
| 301 | * @param {*} val | ||
| 302 | * @author: renchao | ||
| 303 | */ | ||
| 304 | upDateQlrxxList (val) { | ||
| 305 | this.ruleForm.qlrList = _.cloneDeep(val); | ||
| 306 | this.czrOptions = this.ruleForm.qlrList; | ||
| 307 | this.num = 0 | ||
| 308 | this.ruleForm.qlrList.forEach(item => { | ||
| 309 | if (item.id == this.czr) { | ||
| 310 | this.num++ | ||
| 311 | } | ||
| 312 | }) | ||
| 313 | if (this.num == 0) { | ||
| 314 | this.czr = '' | ||
| 315 | } | ||
| 316 | }, | ||
| 317 | /** | ||
| 318 | * @description: 是否持证人变化 | ||
| 319 | * @param {*} val | ||
| 320 | * @author: renchao | ||
| 321 | */ | ||
| 322 | updaterow () { | ||
| 323 | this.czr = ""; | ||
| 324 | }, | ||
| 325 | /** | ||
| 326 | * @description: 更新业务人信息 | ||
| 327 | * @param {*} val | ||
| 328 | * @author: renchao | ||
| 329 | */ | ||
| 330 | upDateYwrxxList (val) { | ||
| 331 | this.ruleForm.ywrList = _.cloneDeep(val); | ||
| 332 | }, | ||
| 333 | |||
| 334 | /** | ||
| 335 | * @description: onSubmit | ||
| 336 | * @author: renchao | ||
| 337 | */ | ||
| 338 | onSubmit () { | ||
| 339 | let that = this; | ||
| 340 | if (this.ruleForm.qlrList.length == 0) { | ||
| 341 | this.$message({ | ||
| 342 | showClose: true, | ||
| 343 | message: "请确认权利人信息", | ||
| 344 | type: "error", | ||
| 345 | }); | ||
| 346 | return false; | ||
| 347 | } | ||
| 348 | |||
| 349 | if (this.ruleForm.sldy.gyfs == "0") { | ||
| 350 | if (this.ruleForm.qlrList.length > 1) { | ||
| 351 | this.$message({ | ||
| 352 | showClose: true, | ||
| 353 | message: "共有方式:单独所有,权利人只能是一个人", | ||
| 354 | type: "error", | ||
| 355 | }); | ||
| 356 | return false; | ||
| 357 | } | ||
| 358 | this.ruleForm.qlrList[0].sfczr = "1"; | ||
| 359 | } else { | ||
| 360 | if (this.ruleForm.qlrList.length <= 1) { | ||
| 361 | this.$message({ | ||
| 362 | showClose: true, | ||
| 363 | message: | ||
| 364 | "共有方式:共同所有,按份所有,其他所有,权利人必须是两个以上", | ||
| 365 | type: "error", | ||
| 366 | }); | ||
| 367 | return false; | ||
| 368 | } | ||
| 369 | //是否分别持证 | ||
| 370 | if (this.ruleForm.sldy.sqfbcz == "1") { | ||
| 371 | //是 | ||
| 372 | this.ruleForm.qlrList.forEach((item, index) => { | ||
| 373 | item.sfczr = "1"; | ||
| 374 | }); | ||
| 375 | } else { | ||
| 376 | if (that.czr === '') { | ||
| 377 | that.$message({ | ||
| 378 | showClose: true, | ||
| 379 | message: "请选择持证人", | ||
| 380 | type: "error" | ||
| 381 | }); | ||
| 382 | return false; | ||
| 383 | } | ||
| 384 | this.ruleForm.qlrList.forEach((item, index) => { | ||
| 385 | if (item.id == that.czr) { | ||
| 386 | item.sfczr = "1" | ||
| 387 | } else { | ||
| 388 | item.sfczr = "0" | ||
| 389 | } | ||
| 390 | }) | ||
| 391 | } | ||
| 392 | } | ||
| 393 | |||
| 394 | |||
| 395 | this.$refs['ruleForm'].validate((valid) => { | ||
| 396 | if (valid) { | ||
| 397 | that.$store.dispatch("user/refreshPage", false); | ||
| 398 | saveData(that.ruleForm).then((res) => { | ||
| 399 | if (res.code === 200) { | ||
| 400 | that.$message({ | ||
| 401 | showClose: true, | ||
| 402 | message: "保存成功!", | ||
| 403 | type: "success", | ||
| 404 | }); | ||
| 405 | that.$store.dispatch("user/refreshPage", true); | ||
| 406 | } else { | ||
| 407 | that.$message({ | ||
| 408 | showClose: true, | ||
| 409 | message: res.message, | ||
| 410 | type: "error", | ||
| 411 | }); | ||
| 412 | } | ||
| 413 | }) | ||
| 414 | } else { | ||
| 415 | that.$message({ | ||
| 416 | showClose: true, | ||
| 417 | message: "请输入登记原因", | ||
| 418 | type: "error" | ||
| 419 | }) | ||
| 420 | return false | ||
| 421 | } | ||
| 422 | }) | ||
| 423 | |||
| 424 | }, | ||
| 425 | /** | ||
| 426 | * @description: compare | ||
| 427 | * @author: renchao | ||
| 428 | */ | ||
| 429 | compare () { | ||
| 430 | this.$popupDialog( | ||
| 431 | this.ruleForm.qlxx.qllxmc, | ||
| 432 | "registerBook/comparison", | ||
| 433 | { | ||
| 434 | bsmQlxx: this.ruleForm.qlxx.bsmQlxx, | ||
| 435 | dqqllx: "YGDJ", | ||
| 436 | }, | ||
| 437 | "80%", | ||
| 438 | true | ||
| 439 | ); | ||
| 440 | }, | ||
| 441 | }, | ||
| 442 | }; | ||
| 443 | </script> | ||
| 444 | <style scoped lang="scss"> | ||
| 445 | @import "~@/styles/public.scss"; | ||
| 446 | |||
| 447 | /deep/.el-form { | ||
| 448 | display: flex; | ||
| 449 | flex-direction: column; | ||
| 450 | height: calc(100vh - 130px); | ||
| 451 | } | ||
| 452 | |||
| 453 | /deep/.el-form-item__label { | ||
| 454 | padding: 0; | ||
| 455 | } | ||
| 456 | |||
| 457 | /deep/.el-radio { | ||
| 458 | margin-right: 10px; | ||
| 459 | } | ||
| 460 | |||
| 461 | /deep/.el-select { | ||
| 462 | width: 100%; | ||
| 463 | } | ||
| 464 | |||
| 465 | /deep/.el-form-item { | ||
| 466 | margin-bottom: 3px; | ||
| 467 | } | ||
| 468 | |||
| 469 | .marginBot0 { | ||
| 470 | margin-bottom: 0 !important; | ||
| 471 | } | ||
| 472 | |||
| 473 | .slxx { | ||
| 474 | box-sizing: border-box; | ||
| 475 | } | ||
| 476 | |||
| 477 | .slxx_con { | ||
| 478 | flex: 1; | ||
| 479 | height: 100%; | ||
| 480 | background-color: #ffffff; | ||
| 481 | overflow-y: auto; | ||
| 482 | padding-right: 3px; | ||
| 483 | overflow-x: hidden; | ||
| 484 | } | ||
| 485 | |||
| 486 | .submit_btn { | ||
| 487 | height: 50px; | ||
| 488 | } | ||
| 489 | |||
| 490 | .btn { | ||
| 491 | text-align: center; | ||
| 492 | padding-top: 10px; | ||
| 493 | height: 36px; | ||
| 494 | background-color: #ffffff; | ||
| 495 | padding: 5px 0; | ||
| 496 | } | ||
| 497 | |||
| 498 | .textArea { | ||
| 499 | /deep/.el-textarea__inner { | ||
| 500 | min-height: 90px !important; | ||
| 501 | } | ||
| 502 | } | ||
| 503 | |||
| 504 | /deep/.el-form-item__label { | ||
| 505 | padding-bottom: 0px; | ||
| 506 | } | ||
| 507 | </style> |
src/views/ywbl/slsqxx/ygdy/slxx.vue
deleted
100644 → 0
| 1 | <template> | ||
| 2 | <!-- 受理信息 --> | ||
| 3 | <div class="slxx"> | ||
| 4 | <el-form | ||
| 5 | :model="ruleForm" | ||
| 6 | :rules="rules" | ||
| 7 | v-Loading="loading" | ||
| 8 | ref="ruleForm" | ||
| 9 | :label-position="flag ? 'top' : ''" | ||
| 10 | :inline="flag" | ||
| 11 | label-width="140px"> | ||
| 12 | <div class="slxx_con" :class="flag ? 'formMarginBot0' : ''"> | ||
| 13 | <div class="slxx_title title-block"> | ||
| 14 | 申请业务信息 | ||
| 15 | <div class="triangle"></div> | ||
| 16 | </div> | ||
| 17 | <el-row :gutter="10" v-if="ruleForm.slsq"> | ||
| 18 | <el-col :span="8"> | ||
| 19 | <el-form-item label="业务号:"> | ||
| 20 | <el-input disabled v-model="ruleForm.flow.ywh"></el-input> | ||
| 21 | </el-form-item> | ||
| 22 | </el-col> | ||
| 23 | <el-col :span="8"> | ||
| 24 | <el-form-item label="受理人员:"> | ||
| 25 | <el-input disabled v-model="ruleForm.slsq.slry"></el-input> | ||
| 26 | </el-form-item> | ||
| 27 | </el-col> | ||
| 28 | <el-col :span="8"> | ||
| 29 | <el-form-item label="受理时间:"> | ||
| 30 | <el-input disabled v-model="ruleForm.slsq.slsj"></el-input> | ||
| 31 | </el-form-item> | ||
| 32 | </el-col> | ||
| 33 | </el-row> | ||
| 34 | <el-row :gutter="10" v-if="ruleForm.slsq"> | ||
| 35 | <el-col :span="8"> | ||
| 36 | <el-form-item label="权利类型:"> | ||
| 37 | <el-input disabled v-model="ruleForm.sldy.qllxmc"></el-input> | ||
| 38 | </el-form-item> | ||
| 39 | </el-col> | ||
| 40 | <el-col :span="8"> | ||
| 41 | <el-form-item label="登记类型:"> | ||
| 42 | <el-input disabled v-model="ruleForm.sldy.djlxmc"></el-input> | ||
| 43 | </el-form-item> | ||
| 44 | </el-col> | ||
| 45 | <el-col :span="8"> | ||
| 46 | <el-form-item label="登记情形:"> | ||
| 47 | <el-input disabled v-model="ruleForm.slsq.djqxmc"></el-input> | ||
| 48 | </el-form-item> | ||
| 49 | </el-col> | ||
| 50 | </el-row> | ||
| 51 | <div class="slxx_title title-block"> | ||
| 52 | 预告买卖登记情况 | ||
| 53 | <div class="triangle"></div> | ||
| 54 | </div> | ||
| 55 | <el-row :gutter="10"> | ||
| 56 | <el-col :span="8"> | ||
| 57 | <el-form-item label="权利类型:"> | ||
| 58 | <el-input disabled v-model="ruleForm.ztQlxx.qllxmc"></el-input> | ||
| 59 | </el-form-item> | ||
| 60 | </el-col> | ||
| 61 | <el-col :span="8"> | ||
| 62 | <el-form-item label="不动产证明号:"> | ||
| 63 | <el-input disabled v-model="ruleForm.ztQlxx.bdcqzh"></el-input> | ||
| 64 | </el-form-item> | ||
| 65 | </el-col> | ||
| 66 | <el-col :span="8"> | ||
| 67 | <el-form-item label="不动产单元号:"> | ||
| 68 | <el-input disabled v-model="ruleForm.ztQlxx.bdcdyh"></el-input> | ||
| 69 | </el-form-item> | ||
| 70 | </el-col> | ||
| 71 | </el-row> | ||
| 72 | <el-row :gutter="10"> | ||
| 73 | <el-col :span="8"> | ||
| 74 | <el-form-item label="权利人:"> | ||
| 75 | <el-input disabled v-model="ruleForm.ztQlxx.qlrmc"></el-input> | ||
| 76 | </el-form-item> | ||
| 77 | </el-col> | ||
| 78 | <el-col :span="8"> | ||
| 79 | <el-form-item label="证件种类:"> | ||
| 80 | <el-input disabled v-model="ruleForm.ztQlxx.qlrzjzl"></el-input> | ||
| 81 | </el-form-item> | ||
| 82 | </el-col> | ||
| 83 | <el-col :span="8"> | ||
| 84 | <el-form-item label="证件号:"> | ||
| 85 | <el-input disabled v-model="ruleForm.ztQlxx.qlrzjhm"></el-input> | ||
| 86 | </el-form-item> | ||
| 87 | </el-col> | ||
| 88 | </el-row> | ||
| 89 | <el-row :gutter="10"> | ||
| 90 | <el-col :span="8"> | ||
| 91 | <el-form-item label="房屋面积:"> | ||
| 92 | <el-input disabled v-model="ruleForm.ztQlxx.qlmjmc"></el-input> | ||
| 93 | </el-form-item> | ||
| 94 | </el-col> | ||
| 95 | <el-col :span="8"> | ||
| 96 | <el-form-item label="房屋用途:"> | ||
| 97 | <el-input disabled v-model="ruleForm.ztQlxx.qlytmc"></el-input> | ||
| 98 | </el-form-item> | ||
| 99 | </el-col> | ||
| 100 | <el-col :span="8"> | ||
| 101 | <el-form-item label="房屋性质:"> | ||
| 102 | <el-input disabled v-model="ruleForm.ztQlxx.qlxzmc"></el-input> | ||
| 103 | </el-form-item> | ||
| 104 | </el-col> | ||
| 105 | </el-row> | ||
| 106 | <el-row :gutter="10"> | ||
| 107 | <el-col :span="8"> | ||
| 108 | <el-form-item label="房屋取得价格:"> | ||
| 109 | <el-input disabled v-model="ruleForm.ztQlxx.qdjgmc"></el-input> | ||
| 110 | </el-form-item> | ||
| 111 | </el-col> | ||
| 112 | <el-col :span="16"> | ||
| 113 | <el-form-item label="不动产坐落:"> | ||
| 114 | <el-input disabled v-model="ruleForm.ztQlxx.zl"></el-input> | ||
| 115 | </el-form-item> | ||
| 116 | </el-col> | ||
| 117 | </el-row> | ||
| 118 | <div class="slxx_title title-block"> | ||
| 119 | 预告抵押情况 | ||
| 120 | <div class="triangle"></div> | ||
| 121 | </div> | ||
| 122 | <el-row :gutter="10"> | ||
| 123 | <el-col :span="8"> | ||
| 124 | <el-form-item label="原不动产证号:" | ||
| 125 | prop="sldy.ybdcqzsh" | ||
| 126 | :rules="rules.ybdcqzshrules"> | ||
| 127 | <el-input disabled v-model="ruleForm.sldy.ybdcqzsh"></el-input> | ||
| 128 | </el-form-item> | ||
| 129 | </el-col> | ||
| 130 | <el-col :span="8"> | ||
| 131 | <el-form-item label="预告登记种类:" | ||
| 132 | prop="ygdj.ygdjzlmc" | ||
| 133 | :rules="rules.ygdjzlmcrules"> | ||
| 134 | <el-input disabled v-model="ruleForm.ygdj.ygdjzlmc"></el-input> | ||
| 135 | </el-form-item> | ||
| 136 | </el-col> | ||
| 137 | <el-col :span="8"> | ||
| 138 | <el-form-item | ||
| 139 | label="是否禁止或者限制转让的约定:" | ||
| 140 | label-width="200px" | ||
| 141 | prop="ygdj.sfczjzhxz" | ||
| 142 | :rules="rules.sfczjzhxzrules"> | ||
| 143 | <el-radio-group | ||
| 144 | v-model="ruleForm.ygdj.sfczjzhxz" | ||
| 145 | :disabled="!viewEdit"> | ||
| 146 | <el-radio label="1">是</el-radio> | ||
| 147 | <el-radio label="0">否</el-radio> | ||
| 148 | </el-radio-group> | ||
| 149 | </el-form-item> | ||
| 150 | </el-col> | ||
| 151 | </el-row> | ||
| 152 | <el-row :gutter="10"> | ||
| 153 | <el-col :span="8"> | ||
| 154 | <el-form-item label="被担保主债权数额:" | ||
| 155 | prop="ygdj.qdjg" | ||
| 156 | :rules="rules.qdjgrules"> | ||
| 157 | <div class="flex"> | ||
| 158 | <el-input | ||
| 159 | v-model="ruleForm.ygdj.qdjg" | ||
| 160 | :disabled="!viewEdit"></el-input> | ||
| 161 | <el-select | ||
| 162 | v-model="ruleForm.ygdj.jedw" | ||
| 163 | :disabled="!viewEdit" | ||
| 164 | style="width: 68px"> | ||
| 165 | <el-option | ||
| 166 | v-for="item in dictData['A57']" | ||
| 167 | :key="item.dcode" | ||
| 168 | :label="item.dname" | ||
| 169 | :value="item.dcode"></el-option> | ||
| 170 | </el-select> | ||
| 171 | </div> | ||
| 172 | </el-form-item> | ||
| 173 | </el-col> | ||
| 174 | <el-col :span="8"> | ||
| 175 | <el-form-item label="债务履行起始时间:" | ||
| 176 | prop="ygdj.zwlxqssj" | ||
| 177 | :rules="rules.zwlxqssjrules"> | ||
| 178 | <el-date-picker | ||
| 179 | v-model="ruleForm.ygdj.zwlxqssj" | ||
| 180 | :disabled="!viewEdit" | ||
| 181 | type="date"></el-date-picker> | ||
| 182 | </el-form-item> | ||
| 183 | </el-col> | ||
| 184 | <el-col :span="8"> | ||
| 185 | <el-form-item label="债务履行结束时间:" | ||
| 186 | prop="ygdj.zwlxjssj" | ||
| 187 | :rules="rules.zwlxjssjrules"> | ||
| 188 | <el-date-picker | ||
| 189 | v-model="ruleForm.ygdj.zwlxjssj" | ||
| 190 | :disabled="!viewEdit" | ||
| 191 | type="date"></el-date-picker> | ||
| 192 | </el-form-item> | ||
| 193 | </el-col> | ||
| 194 | </el-row> | ||
| 195 | <el-row :gutter="10"> | ||
| 196 | <el-col :span="24"> | ||
| 197 | <el-form-item label="担保范围:" | ||
| 198 | prop="ygdj.dbfw" | ||
| 199 | :rules="rules.dbfwrules"> | ||
| 200 | <el-input | ||
| 201 | v-model="ruleForm.ygdj.dbfw" | ||
| 202 | :disabled="!viewEdit"></el-input> | ||
| 203 | </el-form-item> | ||
| 204 | </el-col> | ||
| 205 | </el-row> | ||
| 206 | <el-row> | ||
| 207 | <el-col :span="24"> | ||
| 208 | <el-form-item label="附记:" prop="fj"> | ||
| 209 | <el-input | ||
| 210 | type="textarea" | ||
| 211 | maxlength="500" | ||
| 212 | show-word-limit | ||
| 213 | v-model="ruleForm.ygdj.fj" | ||
| 214 | :disabled="!viewEdit"></el-input> | ||
| 215 | </el-form-item> | ||
| 216 | </el-col> | ||
| 217 | </el-row> | ||
| 218 | <div class="slxx_title title-block"> | ||
| 219 | 抵押权人信息 | ||
| 220 | <div class="triangle"></div> | ||
| 221 | </div> | ||
| 222 | <el-row :gutter="10"> | ||
| 223 | <el-col :span="12"> | ||
| 224 | <el-form-item label="共有方式:"> | ||
| 225 | <el-radio-group | ||
| 226 | :disabled="!viewEdit" | ||
| 227 | v-model="ruleForm.sldy.gyfs"> | ||
| 228 | <el-radio label="0">单独所有</el-radio> | ||
| 229 | <el-radio label="1">共同共有</el-radio> | ||
| 230 | <el-radio label="2">按份所有</el-radio> | ||
| 231 | <el-radio label="3">其它共有</el-radio> | ||
| 232 | </el-radio-group> | ||
| 233 | </el-form-item> | ||
| 234 | </el-col> | ||
| 235 | <el-col :span="6" v-show="ruleForm.sldy.gyfs != '0'"> | ||
| 236 | <el-form-item label="是否分别持证:"> | ||
| 237 | <el-radio-group | ||
| 238 | v-model="ruleForm.sldy.sqfbcz" | ||
| 239 | :disabled="!viewEdit" | ||
| 240 | @input="updaterow()"> | ||
| 241 | <el-radio :label="1">是</el-radio> | ||
| 242 | <el-radio :label="0">否</el-radio> | ||
| 243 | </el-radio-group> | ||
| 244 | </el-form-item> | ||
| 245 | </el-col> | ||
| 246 | <el-col | ||
| 247 | :span="6" | ||
| 248 | v-show="ruleForm.sldy.sqfbcz == '0' && ruleForm.sldy.gyfs != '0'"> | ||
| 249 | <el-form-item label="持证人:"> | ||
| 250 | <el-select | ||
| 251 | v-model="czr" | ||
| 252 | placeholder="持证人" | ||
| 253 | :disabled="!viewEdit"> | ||
| 254 | <el-option | ||
| 255 | v-for="(item,index) in czrOptions" | ||
| 256 | :key="index" | ||
| 257 | :label="item.sqrmc" | ||
| 258 | :value="item.id"></el-option> | ||
| 259 | </el-select> | ||
| 260 | </el-form-item> | ||
| 261 | </el-col> | ||
| 262 | </el-row> | ||
| 263 | <qlrCommonTable | ||
| 264 | @upDateQlrxxList="upDateQlrxxList" | ||
| 265 | :tableData="ruleForm.qlrList" | ||
| 266 | :disabled="viewEdit" | ||
| 267 | :gyfs="ruleForm.sldy.gyfs" /> | ||
| 268 | <div class="slxx_title title-block"> | ||
| 269 | 抵押人信息 | ||
| 270 | <div class="triangle"></div> | ||
| 271 | </div> | ||
| 272 | <ywrCommonTable | ||
| 273 | @upDateQlrxxList="upDateYwrxxList" | ||
| 274 | :tableData="ruleForm.ywrList" | ||
| 275 | :disabled="viewEdit" | ||
| 276 | :gyfs="ruleForm.sldy.gyfs" /> | ||
| 277 | <div class="slxx_title title-block"> | ||
| 278 | 登记原因 | ||
| 279 | <div class="triangle"></div> | ||
| 280 | </div> | ||
| 281 | <el-row :gutter="10"> | ||
| 282 | <el-col> | ||
| 283 | <el-form-item v-if="ruleForm.sldy.djlx=='400'" label="注销登记原因:" prop="djyy"> | ||
| 284 | <el-input | ||
| 285 | class="textArea" | ||
| 286 | type="textarea" | ||
| 287 | maxlength="500" | ||
| 288 | show-word-limit | ||
| 289 | :disabled="!viewEdit" | ||
| 290 | v-model="ruleForm.ygdj.zxyy"> | ||
| 291 | </el-input> | ||
| 292 | </el-form-item> | ||
| 293 | <el-form-item v-else label="登记原因:" prop="ygdj.djyy"> | ||
| 294 | <el-input | ||
| 295 | class="textArea" | ||
| 296 | type="textarea" | ||
| 297 | maxlength="500" | ||
| 298 | show-word-limit | ||
| 299 | :disabled="!viewEdit" | ||
| 300 | v-model="ruleForm.ygdj.djyy"> | ||
| 301 | </el-input> | ||
| 302 | </el-form-item> | ||
| 303 | </el-col> | ||
| 304 | </el-row> | ||
| 305 | </div> | ||
| 306 | <el-row class="btn" v-if="isSave"> | ||
| 307 | <el-form-item> | ||
| 308 | <el-button type="primary" @click="onSubmit">保存</el-button> | ||
| 309 | </el-form-item> | ||
| 310 | </el-row> | ||
| 311 | </el-form> | ||
| 312 | </div> | ||
| 313 | </template> | ||
| 314 | <script> | ||
| 315 | import ywmix from "@/views/ywbl/mixin/index"; | ||
| 316 | import qlrCommonTable from "@/views/workflow/components/qlrCommonTable"; | ||
| 317 | import ywrCommonTable from "@/views/workflow/components/ywrCommonTable"; | ||
| 318 | import { Init, saveData } from "@/api/workflow/ygdyFlow.js"; | ||
| 319 | import { mapGetters } from "vuex"; | ||
| 320 | export default { | ||
| 321 | mixins: [ywmix], | ||
| 322 | mounted () { | ||
| 323 | let that = this; | ||
| 324 | this.viewEdit = this.$parent.currentSelectTab.ableOperation; | ||
| 325 | this.propsParam = this.$attrs; | ||
| 326 | var formdata = new FormData(); | ||
| 327 | this.loading = true; | ||
| 328 | formdata.append("bsmSldy", this.propsParam.bsmSldy); | ||
| 329 | formdata.append("bsmSlsq", this.$route.query.bsmSlsq); | ||
| 330 | formdata.append("djlx", this.propsParam.djlx); | ||
| 331 | formdata.append("isEdit", this.viewEdit); | ||
| 332 | Init(formdata).then((res) => { | ||
| 333 | setTimeout(() => { | ||
| 334 | that.loading = false | ||
| 335 | }, 200) | ||
| 336 | if (res.code === 200 && res.result) { | ||
| 337 | that.ruleForm = res.result; | ||
| 338 | that.ruleForm.qlrList.forEach((item) => { | ||
| 339 | item.id = item.bsmSqr | ||
| 340 | if (item.sfczr == '1') { | ||
| 341 | that.czr = item.bsmSqr | ||
| 342 | } | ||
| 343 | }) | ||
| 344 | that.czrOptions = this.ruleForm.qlrList; | ||
| 345 | that.isSave = that.viewEdit | ||
| 346 | } else { | ||
| 347 | that.isSave = false | ||
| 348 | that.$confirm(res.message, '提示', { | ||
| 349 | cancelButtonText: '取消', | ||
| 350 | showConfirmButton: false, | ||
| 351 | type: 'warning' | ||
| 352 | }) | ||
| 353 | } | ||
| 354 | }).catch(() => { | ||
| 355 | this.loading = false | ||
| 356 | this.isSave = false | ||
| 357 | }) | ||
| 358 | }, | ||
| 359 | components: { qlrCommonTable, ywrCommonTable }, | ||
| 360 | computed: { | ||
| 361 | ...mapGetters(["dictData", "flag"]) | ||
| 362 | }, | ||
| 363 | data () { | ||
| 364 | return { | ||
| 365 | isSave: true, | ||
| 366 | //表单是否可操作 | ||
| 367 | viewEdit: true, | ||
| 368 | loading: false, | ||
| 369 | disabled: true, | ||
| 370 | tdytOption: [], | ||
| 371 | czrOptions: [], | ||
| 372 | czr: "", | ||
| 373 | ruleForm: {}, | ||
| 374 | //传递参数 | ||
| 375 | propsParam: this.$attrs, | ||
| 376 | rules: { | ||
| 377 | ybdcqzshrules: [ | ||
| 378 | { required: true, message: "原不动产证号", trigger: "blur" }, | ||
| 379 | ], | ||
| 380 | ygdjzlmcrules: [ | ||
| 381 | { required: true, message: "预告登记种类", trigger: "blur" }, | ||
| 382 | ], | ||
| 383 | sfczjzhxzrules: [ | ||
| 384 | { required: true, message: "是否禁止或者限制转让的约定:", trigger: "blur" }, | ||
| 385 | ], | ||
| 386 | qdjgrules: [{ required: true, message: "被担保主债权数额", trigger: "blur" }], | ||
| 387 | zwlxqssjrules: [{ required: true, message: "债务履行起始时间", trigger: "blur" }], | ||
| 388 | zwlxjssjrules: [{ required: true, message: "债务履行结束时间", trigger: "blur" }], | ||
| 389 | dbfwrules: [{ required: true, message: "担保范围", trigger: "blur" }], | ||
| 390 | 'ygdj.djyy': [ | ||
| 391 | { required: true, message: '请输入登记原因', trigger: 'blur' } | ||
| 392 | ] | ||
| 393 | } | ||
| 394 | } | ||
| 395 | }, | ||
| 396 | methods: { | ||
| 397 | /** | ||
| 398 | * @description: 更新权利人信息 | ||
| 399 | * @param {*} val | ||
| 400 | * @author: renchao | ||
| 401 | */ | ||
| 402 | upDateQlrxxList (val) { | ||
| 403 | this.ruleForm.qlrList = _.cloneDeep(val); | ||
| 404 | this.czrOptions = this.ruleForm.qlrList; | ||
| 405 | this.num = 0 | ||
| 406 | this.ruleForm.qlrList.forEach(item => { | ||
| 407 | if (item.id == this.czr) { | ||
| 408 | this.num++ | ||
| 409 | } | ||
| 410 | }) | ||
| 411 | if (this.num == 0) { | ||
| 412 | this.czr = '' | ||
| 413 | } | ||
| 414 | }, | ||
| 415 | /** | ||
| 416 | * @description: 义务人信息 | ||
| 417 | * @param {*} val | ||
| 418 | * @author: renchao | ||
| 419 | */ | ||
| 420 | upDateYwrxxList (val) { | ||
| 421 | this.ruleForm.ywrList = _.cloneDeep(val); | ||
| 422 | }, | ||
| 423 | /** | ||
| 424 | * @description: 是否持证人变化 | ||
| 425 | * @author: renchao | ||
| 426 | */ | ||
| 427 | updaterow () { | ||
| 428 | this.czr = ""; | ||
| 429 | }, | ||
| 430 | /** | ||
| 431 | * @description: onSubmit | ||
| 432 | * @author: renchao | ||
| 433 | */ | ||
| 434 | onSubmit () { | ||
| 435 | let that = this; | ||
| 436 | if (this.ruleForm.qlrList.length == 0) { | ||
| 437 | this.$message({ | ||
| 438 | showClose: true, | ||
| 439 | message: "请确认权利人信息", | ||
| 440 | type: "error", | ||
| 441 | }); | ||
| 442 | return false; | ||
| 443 | } | ||
| 444 | |||
| 445 | if (this.ruleForm.sldy.gyfs == "0") { | ||
| 446 | if (this.ruleForm.qlrList.length > 1) { | ||
| 447 | this.$message({ | ||
| 448 | showClose: true, | ||
| 449 | message: "共有方式:单独所有,权利人只能是一个人", | ||
| 450 | type: "error", | ||
| 451 | }); | ||
| 452 | return false; | ||
| 453 | } | ||
| 454 | this.ruleForm.qlrList[0].sfczr = "1"; | ||
| 455 | } else { | ||
| 456 | if (this.ruleForm.qlrList.length <= 1) { | ||
| 457 | this.$message({ | ||
| 458 | showClose: true, | ||
| 459 | message: | ||
| 460 | "共有方式:共同所有,按份所有,其他所有,权利人必须是两个以上", | ||
| 461 | type: "error", | ||
| 462 | }); | ||
| 463 | return false; | ||
| 464 | } | ||
| 465 | //是否分别持证 | ||
| 466 | if (this.ruleForm.sldy.sqfbcz == "1") { | ||
| 467 | //是 | ||
| 468 | this.ruleForm.qlrList.forEach((item, index) => { | ||
| 469 | item.sfczr = "1"; | ||
| 470 | }); | ||
| 471 | } else { | ||
| 472 | if (that.czr === '') { | ||
| 473 | that.$message({ | ||
| 474 | showClose: true, | ||
| 475 | message: "请选择持证人", | ||
| 476 | type: "error", | ||
| 477 | }); | ||
| 478 | return false; | ||
| 479 | } | ||
| 480 | this.ruleForm.qlrList.forEach((item, index) => { | ||
| 481 | if (item.id == that.czr) { | ||
| 482 | item.sfczr = "1"; | ||
| 483 | } else { | ||
| 484 | item.sfczr = "0"; | ||
| 485 | } | ||
| 486 | }); | ||
| 487 | } | ||
| 488 | } | ||
| 489 | saveData(this.ruleForm).then((res) => { | ||
| 490 | if (res.code === 200) { | ||
| 491 | this.$message({ | ||
| 492 | showClose: true, | ||
| 493 | message: "保存成功!", | ||
| 494 | type: "success", | ||
| 495 | }); | ||
| 496 | this.$store.dispatch("user/refreshPage", true); | ||
| 497 | } else { | ||
| 498 | this.$message({ | ||
| 499 | showClose: true, | ||
| 500 | message: res.message, | ||
| 501 | type: "error" | ||
| 502 | }) | ||
| 503 | } | ||
| 504 | }) | ||
| 505 | } | ||
| 506 | } | ||
| 507 | } | ||
| 508 | </script> | ||
| 509 | <style scoped lang="scss"> | ||
| 510 | @import "~@/styles/public.scss"; | ||
| 511 | @import "~@/styles/slxx/slxx.scss"; | ||
| 512 | </style> |
| 1 | <template> | ||
| 2 | <!-- 受理信息 --> | ||
| 3 | <div class="slxx"> | ||
| 4 | <el-form | ||
| 5 | :model="ruleForm" | ||
| 6 | v-Loading="loading" | ||
| 7 | :label-position="flag ? 'top' : ''" | ||
| 8 | :inline="flag" | ||
| 9 | ref="ruleForm" | ||
| 10 | label-width="140px"> | ||
| 11 | <div class="slxx_con" :class="flag ? 'formMarginBot0' : ''"> | ||
| 12 | <div class="slxx_title title-block"> | ||
| 13 | 申请业务信息 | ||
| 14 | <div class="triangle"></div> | ||
| 15 | </div> | ||
| 16 | <el-row :gutter="10" v-if="ruleForm.flow"> | ||
| 17 | <el-col :span="8"> | ||
| 18 | <el-form-item label="业务号:"> | ||
| 19 | <el-input disabled v-model="ruleForm.flow.ywh"></el-input> | ||
| 20 | </el-form-item> | ||
| 21 | </el-col> | ||
| 22 | <el-col :span="8"> | ||
| 23 | <el-form-item label="受理人员:"> | ||
| 24 | <el-input disabled v-model="ruleForm.slsq.slry"></el-input> | ||
| 25 | </el-form-item> | ||
| 26 | </el-col> | ||
| 27 | <el-col :span="8"> | ||
| 28 | <el-form-item label="受理时间:"> | ||
| 29 | <el-input disabled v-model="ruleForm.slsq.slsj"></el-input> | ||
| 30 | </el-form-item> | ||
| 31 | </el-col> | ||
| 32 | </el-row> | ||
| 33 | <el-row :gutter="10" v-if="ruleForm.sldyList"> | ||
| 34 | <el-col :span="8"> | ||
| 35 | <el-form-item label="权利类型:"> | ||
| 36 | <el-input | ||
| 37 | disabled | ||
| 38 | v-model="ruleForm.sldyList[0].qllxmc"></el-input> | ||
| 39 | </el-form-item> | ||
| 40 | </el-col> | ||
| 41 | <el-col :span="8"> | ||
| 42 | <el-form-item label="登记类型:"> | ||
| 43 | <el-input | ||
| 44 | disabled | ||
| 45 | v-model="ruleForm.sldyList[0].djlxmc"></el-input> | ||
| 46 | </el-form-item> | ||
| 47 | </el-col> | ||
| 48 | <el-col :span="8"> | ||
| 49 | <el-form-item label="登记情形:"> | ||
| 50 | <el-input disabled v-model="ruleForm.slsq.djqxmc"></el-input> | ||
| 51 | </el-form-item> | ||
| 52 | </el-col> | ||
| 53 | </el-row> | ||
| 54 | |||
| 55 | <div | ||
| 56 | class="slxx_title title-block" | ||
| 57 | v-if="ruleForm.slsq.djywbm.includes('400')"> | ||
| 58 | 在建工程抵押信息列表({{ ruleForm.qlxxList.length }} 户) | ||
| 59 | <div class="triangle"></div> | ||
| 60 | </div> | ||
| 61 | <div | ||
| 62 | class="slxx_title title-block" | ||
| 63 | v-else> | ||
| 64 | 抵押户信息列表信息({{ ruleForm.hlist.length }} 户) | ||
| 65 | <div class="triangle"></div> | ||
| 66 | </div> | ||
| 67 | <cfBdcdyTable :tableData="ruleForm.qlxxList" v-if="ruleForm.slsq.djywbm.includes('400')" /> | ||
| 68 | <qjhTable v-else :tableData="ruleForm.hlist" /> | ||
| 69 | <div class="slxx_title title-block"> | ||
| 70 | 抵押信息 | ||
| 71 | <div class="triangle"></div> | ||
| 72 | </div> | ||
| 73 | <el-row | ||
| 74 | :gutter="10" | ||
| 75 | v-if="ruleForm.diyaqList && ruleForm.diyaqList.length > 0"> | ||
| 76 | <el-col :span="8"> | ||
| 77 | <el-form-item label="抵押方式:"> | ||
| 78 | <el-radio-group disabled v-model="ruleForm.diyaqList[0].dyfs"> | ||
| 79 | <el-radio label="1">一般抵押</el-radio> | ||
| 80 | <el-radio label="2">最高额抵押</el-radio> | ||
| 81 | </el-radio-group> | ||
| 82 | </el-form-item> | ||
| 83 | </el-col> | ||
| 84 | <el-col :span="8"> | ||
| 85 | <el-form-item label="抵押金额类型:"> | ||
| 86 | <el-radio-group | ||
| 87 | v-model="ruleForm.diyaqList[0].dyjelx" | ||
| 88 | :disabled="!viewEdit || ruleForm.slsq.djywbm.includes('400')"> | ||
| 89 | <el-radio label="0">独立抵押</el-radio> | ||
| 90 | <el-radio label="1">整体抵押</el-radio> | ||
| 91 | </el-radio-group> | ||
| 92 | </el-form-item> | ||
| 93 | </el-col> | ||
| 94 | <el-col :span="8"> | ||
| 95 | <el-form-item | ||
| 96 | label="是否存在禁止或者限制转让抵押不动产的约定:" | ||
| 97 | label-width="300px"> | ||
| 98 | <el-radio-group | ||
| 99 | v-model="ruleForm.diyaqList[0].sfczjzhxz" | ||
| 100 | :disabled="!viewEdit || ruleForm.slsq.djywbm.includes('400')"> | ||
| 101 | <el-radio label="1">启用</el-radio> | ||
| 102 | <el-radio label="0">禁用</el-radio> | ||
| 103 | </el-radio-group> | ||
| 104 | </el-form-item> | ||
| 105 | </el-col> | ||
| 106 | </el-row> | ||
| 107 | <el-row | ||
| 108 | :gutter="10" | ||
| 109 | v-if="ruleForm.diyaqList && ruleForm.diyaqList.length > 0"> | ||
| 110 | <el-col :span="8" v-show="ruleForm.diyaqList[0].dyfs == 1"> | ||
| 111 | <el-form-item label="被担保主债权数额:"> | ||
| 112 | <div style="display: flex"> | ||
| 113 | <el-input | ||
| 114 | v-model="ruleForm.diyaqList[0].bdbzzqse" | ||
| 115 | :disabled="!viewEdit || ruleForm.slsq.djywbm.includes('400')"></el-input> | ||
| 116 | <el-select | ||
| 117 | style="width: 68px" | ||
| 118 | v-model="ruleForm.diyaqList[0].jedw" | ||
| 119 | :disabled="!viewEdit || ruleForm.slsq.djywbm.includes('400')"> | ||
| 120 | <el-option | ||
| 121 | v-for="item in dictData['A57']" | ||
| 122 | :key="item.dcode" | ||
| 123 | :label="item.dname" | ||
| 124 | :value="item.dcode"> | ||
| 125 | </el-option> | ||
| 126 | </el-select> | ||
| 127 | </div> | ||
| 128 | </el-form-item> | ||
| 129 | </el-col> | ||
| 130 | |||
| 131 | <el-col :span="8" v-show="ruleForm.diyaqList[0].dyfs == 2"> | ||
| 132 | <el-form-item label="最高债权额:"> | ||
| 133 | <el-input | ||
| 134 | v-model="ruleForm.diyaqList[0].zgzqse" | ||
| 135 | :disabled="!viewEdit || ruleForm.slsq.djywbm.includes('400')"></el-input> | ||
| 136 | <el-select | ||
| 137 | v-model="ruleForm.diyaqList[0].jedw" | ||
| 138 | :disabled="!viewEdit || ruleForm.slsq.djywbm.includes('400')"> | ||
| 139 | <el-option | ||
| 140 | v-for="item in dictData['A57']" | ||
| 141 | :key="item.dcode" | ||
| 142 | :label="item.dname" | ||
| 143 | :value="item.dcode"> | ||
| 144 | </el-option> | ||
| 145 | </el-select> | ||
| 146 | </el-form-item> | ||
| 147 | </el-col> | ||
| 148 | |||
| 149 | <el-col :span="8"> | ||
| 150 | <el-form-item label="债务履行起始时间:"> | ||
| 151 | <el-date-picker | ||
| 152 | v-model="ruleForm.diyaqList[0].zwlxqssj" | ||
| 153 | :disabled="!viewEdit || ruleForm.slsq.djywbm.includes('400')" | ||
| 154 | type="date"> | ||
| 155 | </el-date-picker> | ||
| 156 | </el-form-item> | ||
| 157 | </el-col> | ||
| 158 | <el-col :span="8"> | ||
| 159 | <el-form-item label="债务履行结束时间:"> | ||
| 160 | <el-date-picker | ||
| 161 | v-model="ruleForm.diyaqList[0].zwlxjssj" | ||
| 162 | :disabled="!viewEdit || ruleForm.slsq.djywbm.includes('400')" | ||
| 163 | type="date"> | ||
| 164 | </el-date-picker> | ||
| 165 | </el-form-item> | ||
| 166 | </el-col> | ||
| 167 | </el-row> | ||
| 168 | |||
| 169 | <el-row v-if="ruleForm.diyaqList && ruleForm.diyaqList.length > 0"> | ||
| 170 | <el-col :span="24"> | ||
| 171 | <el-form-item label="担保范围:"> | ||
| 172 | <el-input | ||
| 173 | v-model="ruleForm.diyaqList[0].dbfw" | ||
| 174 | :disabled="!viewEdit || ruleForm.slsq.djywbm.includes('400')"></el-input> | ||
| 175 | </el-form-item> | ||
| 176 | </el-col> | ||
| 177 | </el-row> | ||
| 178 | <el-row v-if="ruleForm.diyaqList && ruleForm.diyaqList.length > 0"> | ||
| 179 | <el-col :span="24"> | ||
| 180 | <el-form-item label="最高债权确定事实和数额:"> | ||
| 181 | <el-input | ||
| 182 | v-model="ruleForm.diyaqList[0].zgzqqdss" | ||
| 183 | :disabled="!viewEdit || ruleForm.slsq.djywbm.includes('400')"></el-input> | ||
| 184 | </el-form-item> | ||
| 185 | </el-col> | ||
| 186 | </el-row> | ||
| 187 | <el-row v-if="ruleForm.diyaqList && ruleForm.diyaqList.length > 0"> | ||
| 188 | <el-col> | ||
| 189 | <el-form-item label="附记:" prop="fj"> | ||
| 190 | <el-input | ||
| 191 | type="textarea" | ||
| 192 | maxlength="500" | ||
| 193 | show-word-limit | ||
| 194 | v-model="ruleForm.diyaqList[0].fj" | ||
| 195 | :disabled="!viewEdit || ruleForm.slsq.djywbm.includes('400')"></el-input> | ||
| 196 | </el-form-item> | ||
| 197 | </el-col> | ||
| 198 | </el-row> | ||
| 199 | |||
| 200 | <div class="slxx_title title-block"> | ||
| 201 | 抵押权人信息 | ||
| 202 | <div class="triangle"></div> | ||
| 203 | </div> | ||
| 204 | <el-row | ||
| 205 | :gutter="10" | ||
| 206 | v-if="ruleForm.sldyList && ruleForm.sldyList.length > 0"> | ||
| 207 | <el-col :span="14"> | ||
| 208 | <el-form-item label="共有方式:"> | ||
| 209 | <el-radio-group | ||
| 210 | :disabled="!viewEdit" | ||
| 211 | v-model="ruleForm.sldyList[0].gyfs"> | ||
| 212 | <el-radio label="0">单独所有</el-radio> | ||
| 213 | <el-radio label="1">共同共有</el-radio> | ||
| 214 | <el-radio label="2">按份所有</el-radio> | ||
| 215 | <el-radio label="3">其它共有</el-radio> | ||
| 216 | </el-radio-group> | ||
| 217 | </el-form-item> | ||
| 218 | </el-col> | ||
| 219 | <el-col :span="5" v-show="ruleForm.sldyList[0].gyfs != '0'"> | ||
| 220 | <el-form-item label="是否分别持证:"> | ||
| 221 | <el-radio-group | ||
| 222 | v-model="ruleForm.sldyList[0].sqfbcz" | ||
| 223 | :disabled="!viewEdit" | ||
| 224 | @input="updaterow()"> | ||
| 225 | <el-radio :label="1">是</el-radio> | ||
| 226 | <el-radio :label="0">否</el-radio> | ||
| 227 | </el-radio-group> | ||
| 228 | </el-form-item> | ||
| 229 | </el-col> | ||
| 230 | <el-col | ||
| 231 | :span="5" | ||
| 232 | v-show=" | ||
| 233 | ruleForm.sldyList[0].gyfs != '0' && | ||
| 234 | ruleForm.sldyList[0].sqfbcz == '0' | ||
| 235 | "> | ||
| 236 | <el-form-item label="持证人:"> | ||
| 237 | <el-select | ||
| 238 | v-model="czr" | ||
| 239 | placeholder="持证人" | ||
| 240 | :disabled="!viewEdit"> | ||
| 241 | <el-option | ||
| 242 | v-for="(item,index) in czrOptions" | ||
| 243 | :key="index" | ||
| 244 | :label="item.sqrmc" | ||
| 245 | :value="item.id"> | ||
| 246 | </el-option> | ||
| 247 | </el-select> | ||
| 248 | </el-form-item> | ||
| 249 | </el-col> | ||
| 250 | </el-row> | ||
| 251 | <qlrCommonTable | ||
| 252 | v-if="ruleForm.sldyList && ruleForm.sldyList.length > 0" | ||
| 253 | :tableData="ruleForm.qlrList" | ||
| 254 | @upDateQlrxxList="upDateQlrxxList" | ||
| 255 | :disabled="viewEdit" | ||
| 256 | :gyfs="ruleForm.sldyList[0].gyfs" /> | ||
| 257 | <div class="slxx_title title-block"> | ||
| 258 | 抵押人信息 | ||
| 259 | <div class="triangle"></div> | ||
| 260 | </div> | ||
| 261 | <qlrCommonTable | ||
| 262 | :tableData="ruleForm.ywrList" | ||
| 263 | @upDateQlrxxList="upDateYwrxxList" | ||
| 264 | :disabled="viewEdit" /> | ||
| 265 | |||
| 266 | <div class="slxx_title title-block"> | ||
| 267 | 登记原因 | ||
| 268 | <div class="triangle"></div> | ||
| 269 | </div> | ||
| 270 | <el-row | ||
| 271 | :gutter="10" | ||
| 272 | v-if="ruleForm.diyaqList && ruleForm.diyaqList.length > 0"> | ||
| 273 | <el-col> | ||
| 274 | <el-form-item | ||
| 275 | v-if="ruleForm.sldyList[0].djlx == '400'" | ||
| 276 | label="注销抵押原因:" | ||
| 277 | prop="djyy"> | ||
| 278 | <el-input | ||
| 279 | class="textArea" | ||
| 280 | type="textarea" | ||
| 281 | :disabled="!viewEdit" | ||
| 282 | v-model="ruleForm.diyaqList[0].zxdyyy"> | ||
| 283 | </el-input> | ||
| 284 | </el-form-item> | ||
| 285 | <el-form-item v-else label="登记原因:" prop="diyaqList[0].djyy"> | ||
| 286 | <el-input | ||
| 287 | class="textArea" | ||
| 288 | type="textarea" | ||
| 289 | maxlength="500" | ||
| 290 | show-word-limit | ||
| 291 | :disabled="!viewEdit" | ||
| 292 | v-model="ruleForm.diyaqList[0].djyy"> | ||
| 293 | </el-input> | ||
| 294 | </el-form-item> | ||
| 295 | </el-col> | ||
| 296 | </el-row> | ||
| 297 | </div> | ||
| 298 | <el-row class="btn" v-if="isSave"> | ||
| 299 | <el-form-item> | ||
| 300 | <el-button type="primary" @click="onSubmitClick()">保存</el-button> | ||
| 301 | </el-form-item> | ||
| 302 | </el-row> | ||
| 303 | </el-form> | ||
| 304 | </div> | ||
| 305 | </template> | ||
| 306 | <script> | ||
| 307 | import qjhTable from "@/views/workflow/components/qjhTable"; | ||
| 308 | import cfBdcdyTable from "@/views/workflow/components/cfBdcdyTable"; | ||
| 309 | import qlrCommonTable from "@/views/workflow/components/qlrCommonTable"; | ||
| 310 | import { bacthInit, saveBatchData } from "@/api/workflow/zjgcdyFlow.js"; | ||
| 311 | import { mapGetters } from "vuex"; | ||
| 312 | export default { | ||
| 313 | mounted () { | ||
| 314 | let that = this | ||
| 315 | this.viewEdit = this.$parent.currentSelectTab.ableOperation; | ||
| 316 | this.propsParam = this.$attrs; | ||
| 317 | var formdata = new FormData(); | ||
| 318 | |||
| 319 | this.loading = true | ||
| 320 | formdata.append("bsmSlsq", this.$route.query.bsmSlsq); | ||
| 321 | formdata.append("djlx", this.propsParam.djlx); | ||
| 322 | formdata.append("isEdit", this.viewEdit); | ||
| 323 | bacthInit(formdata).then((res) => { | ||
| 324 | setTimeout(() => { | ||
| 325 | that.loading = false | ||
| 326 | }, 200) | ||
| 327 | if (res.code === 200 && res.result) { | ||
| 328 | this.ruleForm = res.result; | ||
| 329 | this.ruleForm.qlrList.forEach((item) => { | ||
| 330 | item.id = item.bsmSqr | ||
| 331 | if (item.sfczr == '1') { | ||
| 332 | that.czr = item.bsmSqr | ||
| 333 | } | ||
| 334 | }) | ||
| 335 | that.czrOptions = that.ruleForm.qlrList; | ||
| 336 | that.isSave = that.viewEdit | ||
| 337 | } else { | ||
| 338 | that.isSave = false | ||
| 339 | that.$confirm(res.message, '提示', { | ||
| 340 | cancelButtonText: '取消', | ||
| 341 | showConfirmButton: false, | ||
| 342 | type: 'warning' | ||
| 343 | }) | ||
| 344 | } | ||
| 345 | }).catch(() => { | ||
| 346 | this.loading = false | ||
| 347 | }) | ||
| 348 | }, | ||
| 349 | components: { qlrCommonTable, qjhTable, cfBdcdyTable }, | ||
| 350 | computed: { | ||
| 351 | ...mapGetters(["dictData", "flag"]), | ||
| 352 | }, | ||
| 353 | data () { | ||
| 354 | return { | ||
| 355 | isSave: true, | ||
| 356 | loading: false, | ||
| 357 | //表单是否可操作 | ||
| 358 | viewEdit: true, | ||
| 359 | disabled: true, | ||
| 360 | czrOptions: [], | ||
| 361 | czr: "", | ||
| 362 | ruleForm: {}, | ||
| 363 | //传递参数 | ||
| 364 | propsParam: {}, | ||
| 365 | rules: { | ||
| 366 | 'diyaqList[0].djyy': [ | ||
| 367 | { required: true, message: '请输入登记原因', trigger: 'blur' } | ||
| 368 | ] | ||
| 369 | }, | ||
| 370 | tableData: [], | ||
| 371 | }; | ||
| 372 | }, | ||
| 373 | methods: { | ||
| 374 | /** | ||
| 375 | * @description: onSubmitClick | ||
| 376 | * @author: renchao | ||
| 377 | */ | ||
| 378 | onSubmitClick () { | ||
| 379 | let that = this; | ||
| 380 | if (this.ruleForm.qlrList.length == 0) { | ||
| 381 | this.$message({ | ||
| 382 | showClose: true, | ||
| 383 | message: "请确认抵押权人信息", | ||
| 384 | type: "error", | ||
| 385 | }); | ||
| 386 | return false; | ||
| 387 | } | ||
| 388 | if (this.ruleForm.sldyList[0].gyfs == "0") { | ||
| 389 | if (this.ruleForm.qlrList.length > 1) { | ||
| 390 | this.$message({ | ||
| 391 | showClose: true, | ||
| 392 | message: "共有方式:单独所有,抵押权人只能是一个人", | ||
| 393 | type: "error", | ||
| 394 | }); | ||
| 395 | return false; | ||
| 396 | } | ||
| 397 | this.ruleForm.qlrList[0].sfczr = "1"; | ||
| 398 | } else { | ||
| 399 | if (this.ruleForm.qlrList.length <= 1) { | ||
| 400 | this.$message({ | ||
| 401 | showClose: true, | ||
| 402 | message: | ||
| 403 | "共有方式:共同所有,按份所有,其他所有,抵押权人必须是两个以上", | ||
| 404 | type: "error", | ||
| 405 | }); | ||
| 406 | return false; | ||
| 407 | } | ||
| 408 | //是否分别持证 | ||
| 409 | if (this.ruleForm.sldyList[0].sqfbcz == "1") { | ||
| 410 | //是 | ||
| 411 | this.ruleForm.qlrList.forEach((item, index) => { | ||
| 412 | item.sfczr = "1" | ||
| 413 | }) | ||
| 414 | } else { | ||
| 415 | if (that.czr === '') { | ||
| 416 | that.$message({ | ||
| 417 | showClose: true, | ||
| 418 | message: "请选择持证人", | ||
| 419 | type: "error", | ||
| 420 | }); | ||
| 421 | return false; | ||
| 422 | } | ||
| 423 | this.ruleForm.qlrList.forEach((item, index) => { | ||
| 424 | if (item.id == that.czr) { | ||
| 425 | item.sfczr = "1"; | ||
| 426 | } else { | ||
| 427 | item.sfczr = "0"; | ||
| 428 | } | ||
| 429 | }); | ||
| 430 | } | ||
| 431 | } | ||
| 432 | this.$refs['ruleForm'].validate((valid) => { | ||
| 433 | if (valid) { | ||
| 434 | that.$store.dispatch("user/refreshPage", false); | ||
| 435 | saveBatchData(that.ruleForm, that.propsParam.djlx).then((res) => { | ||
| 436 | if (res.code === 200) { | ||
| 437 | that.$message({ | ||
| 438 | showClose: true, | ||
| 439 | message: "保存成功!", | ||
| 440 | type: "success", | ||
| 441 | }); | ||
| 442 | that.$store.dispatch("user/refreshPage", true); | ||
| 443 | } else { | ||
| 444 | that.$message({ | ||
| 445 | showClose: true, | ||
| 446 | message: res.message, | ||
| 447 | type: "error", | ||
| 448 | }); | ||
| 449 | } | ||
| 450 | }) | ||
| 451 | } else { | ||
| 452 | that.$message({ | ||
| 453 | showClose: true, | ||
| 454 | message: "请输入登记原因", | ||
| 455 | type: "error" | ||
| 456 | }) | ||
| 457 | return false | ||
| 458 | } | ||
| 459 | }) | ||
| 460 | }, | ||
| 461 | /** | ||
| 462 | * @description: 是否持证人变化 | ||
| 463 | * @param {*} val | ||
| 464 | * @author: renchao | ||
| 465 | */ | ||
| 466 | updaterow () { | ||
| 467 | this.czr = ""; | ||
| 468 | }, | ||
| 469 | /** | ||
| 470 | * @description: 更新抵押权人信息 | ||
| 471 | * @param {*} val | ||
| 472 | * @author: renchao | ||
| 473 | */ | ||
| 474 | upDateQlrxxList (val) { | ||
| 475 | if (!_.isEqual(val, this.ruleForm.qlrList)) { | ||
| 476 | this.ruleForm.qlrList = _.cloneDeep(val); | ||
| 477 | this.czrOptions = this.ruleForm.qlrList; | ||
| 478 | } | ||
| 479 | this.num = 0 | ||
| 480 | this.ruleForm.qlrList.forEach(item => { | ||
| 481 | if (item.id == this.czr) { | ||
| 482 | this.num++ | ||
| 483 | } | ||
| 484 | }) | ||
| 485 | if (this.num == 0) { | ||
| 486 | this.czr = '' | ||
| 487 | } | ||
| 488 | }, | ||
| 489 | /** | ||
| 490 | * @description: 更新义务人信息 | ||
| 491 | * @param {*} val | ||
| 492 | * @author: renchao | ||
| 493 | */ | ||
| 494 | upDateYwrxxList (val) { | ||
| 495 | if (!_.isEqual(val, this.ruleForm.ywrList)) { | ||
| 496 | this.ruleForm.ywrList = _.cloneDeep(val); | ||
| 497 | } | ||
| 498 | } | ||
| 499 | } | ||
| 500 | } | ||
| 501 | </script> | ||
| 502 | <style scoped lang="scss"> | ||
| 503 | @import "~@/styles/public.scss"; | ||
| 504 | @import "~@/styles/slxx/slxx.scss"; | ||
| 505 | </style> |
| 1 | <template> | ||
| 2 | <!-- 受理信息 --> | ||
| 3 | <div class="slxx"> | ||
| 4 | <el-form | ||
| 5 | :model="ruleForm" | ||
| 6 | :rules="rules" | ||
| 7 | v-Loading="loading" | ||
| 8 | ref="ruleForm" | ||
| 9 | :label-position="flag ? 'top' : ''" | ||
| 10 | :inline="flag" | ||
| 11 | label-width="170px"> | ||
| 12 | <div class="slxx_con" :class="flag ? 'formMarginBot0' : ''"> | ||
| 13 | <div class="slxx_title title-block"> | ||
| 14 | 申请业务信息 | ||
| 15 | <div class="triangle"></div> | ||
| 16 | </div> | ||
| 17 | <el-row :gutter="10"> | ||
| 18 | <el-col :span="8"> | ||
| 19 | <el-form-item label="业务号:"> | ||
| 20 | <el-input disabled v-model="ruleForm.flow.ywh"></el-input> | ||
| 21 | </el-form-item> | ||
| 22 | </el-col> | ||
| 23 | <el-col :span="8"> | ||
| 24 | <el-form-item label="受理人员:"> | ||
| 25 | <el-input disabled v-model="ruleForm.slsq.slry"></el-input> | ||
| 26 | </el-form-item> | ||
| 27 | </el-col> | ||
| 28 | <el-col :span="8"> | ||
| 29 | <el-form-item label="受理时间:"> | ||
| 30 | <el-input disabled v-model="ruleForm.slsq.slsj"></el-input> | ||
| 31 | </el-form-item> | ||
| 32 | </el-col> | ||
| 33 | </el-row> | ||
| 34 | <el-row :gutter="10"> | ||
| 35 | <el-col :span="8"> | ||
| 36 | <el-form-item label="权利类型:" prop="qllx"> | ||
| 37 | <el-input disabled v-model="ruleForm.sldy.qllxmc"></el-input> | ||
| 38 | </el-form-item> | ||
| 39 | </el-col> | ||
| 40 | <el-col :span="8"> | ||
| 41 | <el-form-item label="登记类型:" prop="djlx"> | ||
| 42 | <el-input disabled v-model="ruleForm.sldy.djlxmc"></el-input> | ||
| 43 | </el-form-item> | ||
| 44 | </el-col> | ||
| 45 | <el-col :span="8"> | ||
| 46 | <el-form-item label="登记情形:" prop="djqx"> | ||
| 47 | <el-input disabled v-model="ruleForm.slsq.djqxmc"></el-input> | ||
| 48 | </el-form-item> | ||
| 49 | </el-col> | ||
| 50 | </el-row> | ||
| 51 | <div class="slxx_title title-block"> | ||
| 52 | 抵押户信息情况 | ||
| 53 | <div class="triangle"></div> | ||
| 54 | </div> | ||
| 55 | <el-row :gutter="10"> | ||
| 56 | <el-col :span="8"> | ||
| 57 | <el-form-item label="房屋用途:"> | ||
| 58 | <el-input disabled v-model="ruleForm.qjh.showfwyt"></el-input> | ||
| 59 | </el-form-item> | ||
| 60 | </el-col> | ||
| 61 | <el-col :span="8"> | ||
| 62 | <el-form-item label="房屋性质:"> | ||
| 63 | <el-input disabled v-model="ruleForm.qjh.fwxzmc"></el-input> | ||
| 64 | </el-form-item> | ||
| 65 | </el-col> | ||
| 66 | <el-col :span="8"> | ||
| 67 | <el-form-item label="房屋结构:"> | ||
| 68 | <el-input disabled v-model="ruleForm.qjh.showfwjg"></el-input> | ||
| 69 | </el-form-item> | ||
| 70 | </el-col> | ||
| 71 | </el-row> | ||
| 72 | <el-row :gutter="10"> | ||
| 73 | <el-col :span="8"> | ||
| 74 | <el-form-item label="建筑面积:"> | ||
| 75 | <div class="flex"> | ||
| 76 | <el-input | ||
| 77 | maxlength="12" | ||
| 78 | v-model="ruleForm.qjh.jzmj" disabled | ||
| 79 | oninput="value = (value.match(/^\d*(\.?\d{0,2})/g)[0]) || null"></el-input> | ||
| 80 | <el-select disabled v-model="mjdw" style="width: 68px"> | ||
| 81 | <el-option | ||
| 82 | v-for="item in dictData['A7']" | ||
| 83 | :key="item.dcode" | ||
| 84 | :label="item.dname" | ||
| 85 | :value="item.dcode"> | ||
| 86 | </el-option> | ||
| 87 | </el-select> | ||
| 88 | </div> | ||
| 89 | </el-form-item> | ||
| 90 | </el-col> | ||
| 91 | <el-col :span="8"> | ||
| 92 | <el-form-item label="套内建筑面积:"> | ||
| 93 | <div class="flex"> | ||
| 94 | <el-input | ||
| 95 | maxlength="12" | ||
| 96 | v-model="ruleForm.qjh.tnjzmj" disabled | ||
| 97 | oninput="value = (value.match(/^\d*(\.?\d{0,2})/g)[0]) || null"></el-input> | ||
| 98 | <el-select disabled v-model="mjdw" style="width: 68px"> | ||
| 99 | <el-option | ||
| 100 | v-for="item in dictData['A7']" | ||
| 101 | :key="item.dcode" | ||
| 102 | :label="item.dname" | ||
| 103 | :value="item.dcode"> | ||
| 104 | </el-option> | ||
| 105 | </el-select> | ||
| 106 | </div> | ||
| 107 | </el-form-item> | ||
| 108 | </el-col> | ||
| 109 | <el-col :span="8"> | ||
| 110 | <el-form-item label="分摊建筑面积:"> | ||
| 111 | <div class="flex"> | ||
| 112 | <el-input | ||
| 113 | maxlength="12" | ||
| 114 | v-model="ruleForm.qjh.ftjzmj" disabled | ||
| 115 | oninput="value = (value.match(/^\d*(\.?\d{0,2})/g)[0]) || null"></el-input> | ||
| 116 | <el-select disabled v-model="mjdw" style="width: 68px"> | ||
| 117 | <el-option | ||
| 118 | v-for="item in dictData['A7']" | ||
| 119 | :key="item.dcode" | ||
| 120 | :label="item.dname" | ||
| 121 | :value="item.dcode"> | ||
| 122 | </el-option> | ||
| 123 | </el-select> | ||
| 124 | </div> | ||
| 125 | </el-form-item> | ||
| 126 | </el-col> | ||
| 127 | </el-row> | ||
| 128 | <el-row :gutter="10"> | ||
| 129 | <el-col :span="8"> | ||
| 130 | <el-form-item label="不动产单元号:"> | ||
| 131 | <el-input disabled v-model="ruleForm.qlxx.bdcdyh"></el-input> | ||
| 132 | </el-form-item> | ||
| 133 | </el-col> | ||
| 134 | <el-col :span="8"> | ||
| 135 | <el-form-item label="室号部位:"> | ||
| 136 | <el-input disabled v-model="ruleForm.qjh.shbw"></el-input> | ||
| 137 | </el-form-item> | ||
| 138 | </el-col> | ||
| 139 | <el-col :span="8"> | ||
| 140 | <el-form-item label="坐落:"> | ||
| 141 | <el-input disabled v-model="ruleForm.sldy.zl"></el-input> | ||
| 142 | </el-form-item> | ||
| 143 | </el-col> | ||
| 144 | </el-row> | ||
| 145 | |||
| 146 | <div class="slxx_title title-block"> | ||
| 147 | 抵押信息 | ||
| 148 | <div class="triangle"></div> | ||
| 149 | </div> | ||
| 150 | |||
| 151 | <el-row :gutter="10"> | ||
| 152 | <el-col :span="8"> | ||
| 153 | <el-form-item label="抵押方式:"> | ||
| 154 | <!-- <el-input disabled v-model="ruleForm.slywxx.djqxmc"></el-input> --> | ||
| 155 | <el-radio-group disabled v-model="ruleForm.diyaq.dyfs"> | ||
| 156 | <el-radio label="1">一般抵押</el-radio> | ||
| 157 | <el-radio label="2">最高额抵押</el-radio> | ||
| 158 | </el-radio-group> | ||
| 159 | </el-form-item> | ||
| 160 | </el-col> | ||
| 161 | <el-col :span="16"> | ||
| 162 | <el-form-item | ||
| 163 | label="是否存在禁止或者限制转让抵押不动产的约定:" | ||
| 164 | label-width="350px"> | ||
| 165 | <el-radio-group | ||
| 166 | v-model="ruleForm.diyaq.sfczjzhxz" | ||
| 167 | :disabled="!viewEdit || ruleForm.sldy.djlx == '400'"> | ||
| 168 | <el-radio label="1">是</el-radio> | ||
| 169 | <el-radio label="0">否</el-radio> | ||
| 170 | </el-radio-group> | ||
| 171 | </el-form-item> | ||
| 172 | </el-col> | ||
| 173 | </el-row> | ||
| 174 | |||
| 175 | <el-row :gutter="10"> | ||
| 176 | <el-col :span="8" v-show="ruleForm.diyaq.dyfs == 1"> | ||
| 177 | <el-form-item label="被担保主债权数额:"> | ||
| 178 | <div style="display:flex"> | ||
| 179 | <el-input | ||
| 180 | v-model="ruleForm.diyaq.bdbzzqse" | ||
| 181 | :disabled="!viewEdit || ruleForm.sldy.djlx == '400'"></el-input> | ||
| 182 | <el-select style="width: 68px" v-model="ruleForm.diyaq.jedw" | ||
| 183 | :disabled="!viewEdit || ruleForm.sldy.djlx == '400'"> | ||
| 184 | <el-option | ||
| 185 | v-for="item in dictData['A57']" | ||
| 186 | :key="item.dcode" | ||
| 187 | :label="item.dname" | ||
| 188 | :value="item.dcode"> | ||
| 189 | </el-option> | ||
| 190 | </el-select> | ||
| 191 | </div> | ||
| 192 | </el-form-item> | ||
| 193 | </el-col> | ||
| 194 | |||
| 195 | <el-col :span="8" v-show="ruleForm.diyaq.dyfs == 2"> | ||
| 196 | <el-form-item label="最高债权额:"> | ||
| 197 | <div style="display: flex"> | ||
| 198 | <el-input | ||
| 199 | v-model="ruleForm.diyaq.zgzqse" | ||
| 200 | :disabled="!viewEdit || ruleForm.sldy.djlx == '400'"></el-input> | ||
| 201 | <el-select v-model="ruleForm.diyaq.jedw" style="width: 68px" :disabled="!viewEdit || ruleForm.sldy.djlx == '400'"> | ||
| 202 | <el-option | ||
| 203 | v-for="item in dictData['A57']" | ||
| 204 | :key="item.dcode" | ||
| 205 | :label="item.dname" | ||
| 206 | :value="item.dcode"> | ||
| 207 | </el-option> | ||
| 208 | </el-select> | ||
| 209 | </div> | ||
| 210 | </el-form-item> | ||
| 211 | </el-col> | ||
| 212 | |||
| 213 | <el-col :span="8"> | ||
| 214 | <el-form-item label="债务履行起始时间:"> | ||
| 215 | <el-date-picker | ||
| 216 | v-model="ruleForm.diyaq.zwlxqssj" | ||
| 217 | :disabled="!viewEdit || ruleForm.sldy.djlx == '400'" | ||
| 218 | type="date"> | ||
| 219 | </el-date-picker> | ||
| 220 | </el-form-item> | ||
| 221 | </el-col> | ||
| 222 | <el-col :span="8"> | ||
| 223 | <el-form-item label="债务履行结束时间:"> | ||
| 224 | <el-date-picker | ||
| 225 | v-model="ruleForm.diyaq.zwlxjssj" | ||
| 226 | :disabled="!viewEdit || ruleForm.sldy.djlx == '400'" | ||
| 227 | type="date"> | ||
| 228 | </el-date-picker> | ||
| 229 | </el-form-item> | ||
| 230 | </el-col> | ||
| 231 | </el-row> | ||
| 232 | |||
| 233 | <el-row> | ||
| 234 | <el-col :span="24"> | ||
| 235 | <el-form-item label="担保范围:"> | ||
| 236 | <el-input | ||
| 237 | v-model="ruleForm.diyaq.dbfw" | ||
| 238 | :disabled="(ruleForm.sldy.djlx == '300' && !viewEdit) || ruleForm.sldy.djlx == '400'"></el-input> | ||
| 239 | </el-form-item> | ||
| 240 | </el-col> | ||
| 241 | </el-row> | ||
| 242 | <el-row> | ||
| 243 | <el-col :span="24"> | ||
| 244 | <el-form-item label="最高债权确定事实和数额:"> | ||
| 245 | <el-input | ||
| 246 | v-model="ruleForm.diyaq.zgzqqdss" | ||
| 247 | :disabled="!viewEdit || ruleForm.sldy.djlx == '400'"></el-input> | ||
| 248 | </el-form-item> | ||
| 249 | </el-col> | ||
| 250 | </el-row> | ||
| 251 | <el-row> | ||
| 252 | <el-col> | ||
| 253 | <el-form-item label="附记:" prop="fj"> | ||
| 254 | <el-input | ||
| 255 | type="textarea" | ||
| 256 | maxlength="500" | ||
| 257 | show-word-limit | ||
| 258 | v-model="ruleForm.diyaq.fj" | ||
| 259 | :disabled="!viewEdit || ruleForm.sldy.djlx == '400'"></el-input> | ||
| 260 | </el-form-item> | ||
| 261 | </el-col> | ||
| 262 | </el-row> | ||
| 263 | |||
| 264 | <div class="slxx_title title-block"> | ||
| 265 | 抵押权人信息 | ||
| 266 | <div class="triangle"></div> | ||
| 267 | </div> | ||
| 268 | <el-row :gutter="10"> | ||
| 269 | <el-col :span="12"> | ||
| 270 | <el-form-item label="共有方式:"> | ||
| 271 | <el-radio-group | ||
| 272 | :disabled="!viewEdit" | ||
| 273 | v-model="ruleForm.sldy.gyfs"> | ||
| 274 | <el-radio label="0">单独所有</el-radio> | ||
| 275 | <el-radio label="1">共同共有</el-radio> | ||
| 276 | <el-radio label="2">按份所有</el-radio> | ||
| 277 | <el-radio label="3">其它共有</el-radio> | ||
| 278 | </el-radio-group> | ||
| 279 | </el-form-item> | ||
| 280 | </el-col> | ||
| 281 | <el-col :span="6" v-show="ruleForm.sldy.gyfs != '0'"> | ||
| 282 | <el-form-item label="是否分别持证:"> | ||
| 283 | <el-radio-group | ||
| 284 | v-model="ruleForm.sldy.sqfbcz" | ||
| 285 | :disabled="!viewEdit" | ||
| 286 | @input="updaterow()"> | ||
| 287 | <el-radio :label="1">是</el-radio> | ||
| 288 | <el-radio :label="0">否</el-radio> | ||
| 289 | </el-radio-group> | ||
| 290 | </el-form-item> | ||
| 291 | </el-col> | ||
| 292 | <el-col | ||
| 293 | :span="6" | ||
| 294 | v-show="ruleForm.sldy.sqfbcz == '0' && ruleForm.sldy.gyfs != '0'"> | ||
| 295 | <el-form-item label="持证人:"> | ||
| 296 | <el-select | ||
| 297 | v-model="czr" | ||
| 298 | placeholder="持证人" | ||
| 299 | :disabled="!viewEdit"> | ||
| 300 | <el-option | ||
| 301 | v-for="(item,index) in czrOptions" | ||
| 302 | :key="index" | ||
| 303 | :label="item.sqrmc" | ||
| 304 | :value="item.id"> | ||
| 305 | </el-option> | ||
| 306 | </el-select> | ||
| 307 | </el-form-item> | ||
| 308 | </el-col> | ||
| 309 | </el-row> | ||
| 310 | <qlrCommonTable | ||
| 311 | :tableData="ruleForm.qlrList" | ||
| 312 | @upDateQlrxxList="upDateQlrxxList" | ||
| 313 | :disabled="viewEdit" | ||
| 314 | :gyfs="ruleForm.sldy.gyfs" /> | ||
| 315 | <div class="slxx_title title-block"> | ||
| 316 | 抵押人信息 | ||
| 317 | <div class="triangle"></div> | ||
| 318 | </div> | ||
| 319 | <qlrCommonTable | ||
| 320 | :tableData="ruleForm.ywrList" | ||
| 321 | @upDateQlrxxList="upDateYwrxxList" | ||
| 322 | :disabled="viewEdit" /> | ||
| 323 | |||
| 324 | <div class="slxx_title title-block"> | ||
| 325 | 登记原因 | ||
| 326 | <div class="triangle"></div> | ||
| 327 | </div> | ||
| 328 | <el-row :gutter="10"> | ||
| 329 | <el-col> | ||
| 330 | <el-form-item | ||
| 331 | v-if="ruleForm.sldy.djlx == '400'" | ||
| 332 | label="注销抵押原因:" | ||
| 333 | prop="djyy"> | ||
| 334 | <el-input | ||
| 335 | class="textArea" | ||
| 336 | type="textarea" | ||
| 337 | :disabled="!viewEdit" | ||
| 338 | v-model="ruleForm.diyaq.zxdyyy"> | ||
| 339 | </el-input> | ||
| 340 | </el-form-item> | ||
| 341 | <el-form-item v-else label="登记原因:" prop="diyaq.djyy"> | ||
| 342 | <el-input | ||
| 343 | class="textArea" | ||
| 344 | type="textarea" | ||
| 345 | maxlength="500" | ||
| 346 | show-word-limit | ||
| 347 | :disabled="!viewEdit" | ||
| 348 | v-model="ruleForm.diyaq.djyy"> | ||
| 349 | </el-input> | ||
| 350 | </el-form-item> | ||
| 351 | </el-col> | ||
| 352 | </el-row> | ||
| 353 | </div> | ||
| 354 | <el-row class="btn" v-if="isSave"> | ||
| 355 | <el-form-item> | ||
| 356 | <el-button type="primary" @click="onSubmitClick()">保存</el-button> | ||
| 357 | </el-form-item> | ||
| 358 | </el-row> | ||
| 359 | </el-form> | ||
| 360 | </div> | ||
| 361 | </template> | ||
| 362 | <script> | ||
| 363 | import qlrCommonTable from "@/views/workflow/components/qlrCommonTable"; | ||
| 364 | import { Init, saveData } from "@/api/workflow/zjgcdyFlow.js"; | ||
| 365 | import { mapGetters } from "vuex"; | ||
| 366 | export default { | ||
| 367 | mounted () { | ||
| 368 | let that = this | ||
| 369 | this.viewEdit = this.$parent.currentSelectTab.ableOperation; | ||
| 370 | this.propsParam = this.$attrs; | ||
| 371 | var formdata = new FormData(); | ||
| 372 | this.loading = true | ||
| 373 | formdata.append("bsmSldy", this.propsParam.bsmSldy); | ||
| 374 | formdata.append("djlx", this.propsParam.djlx); | ||
| 375 | formdata.append("isEdit", this.viewEdit); | ||
| 376 | Init(formdata).then((res) => { | ||
| 377 | this.loading = false | ||
| 378 | if (res.code === 200 && res.result) { | ||
| 379 | this.ruleForm = res.result; | ||
| 380 | window.djlx = res.result.sldy.djlx | ||
| 381 | this.czrOptions = this.ruleForm.qlrList; | ||
| 382 | this.ruleForm.qlrList.forEach((item) => { | ||
| 383 | item.id = item.bsmSqr | ||
| 384 | if (item.sfczr == '1') { | ||
| 385 | that.czr = item.bsmSqr | ||
| 386 | } | ||
| 387 | }) | ||
| 388 | that.czrOptions = that.ruleForm.qlrList; | ||
| 389 | that.isSave = that.viewEdit | ||
| 390 | } else { | ||
| 391 | that.isSave = false | ||
| 392 | that.$confirm(res.message, '提示', { | ||
| 393 | cancelButtonText: '取消', | ||
| 394 | showConfirmButton: false, | ||
| 395 | type: 'warning' | ||
| 396 | }) | ||
| 397 | } | ||
| 398 | }).catch(() => { | ||
| 399 | this.loading = false | ||
| 400 | }) | ||
| 401 | }, | ||
| 402 | components: { qlrCommonTable }, | ||
| 403 | computed: { | ||
| 404 | ...mapGetters(["dictData", "flag"]), | ||
| 405 | }, | ||
| 406 | data () { | ||
| 407 | return { | ||
| 408 | mjdw: '1', | ||
| 409 | isSave: true, | ||
| 410 | loading: false, | ||
| 411 | //表单是否可操作 | ||
| 412 | viewEdit: true, | ||
| 413 | disabled: true, | ||
| 414 | czrOptions: [], | ||
| 415 | czr: "", | ||
| 416 | ruleForm: {}, | ||
| 417 | //传递参数 | ||
| 418 | propsParam: {}, | ||
| 419 | rules: { | ||
| 420 | 'diyaq.djyy': [ | ||
| 421 | { required: true, message: '请输入登记原因', trigger: 'blur' } | ||
| 422 | ] | ||
| 423 | }, | ||
| 424 | // 键名转换,方法默认是label和children进行树状渲染 | ||
| 425 | normalizer (node) { | ||
| 426 | //方法 | ||
| 427 | if (node.children == null || node.children == "null") { | ||
| 428 | delete node.children; | ||
| 429 | } | ||
| 430 | return { | ||
| 431 | id: node.dcode, | ||
| 432 | label: node.dname, | ||
| 433 | }; | ||
| 434 | }, | ||
| 435 | }; | ||
| 436 | }, | ||
| 437 | methods: { | ||
| 438 | /** | ||
| 439 | * @description: onSubmitClick | ||
| 440 | * @author: renchao | ||
| 441 | */ | ||
| 442 | onSubmitClick () { | ||
| 443 | let that = this; | ||
| 444 | if (this.ruleForm.qlrList.length == 0) { | ||
| 445 | this.$message({ | ||
| 446 | showClose: true, | ||
| 447 | message: "请确认权利人信息", | ||
| 448 | type: "error", | ||
| 449 | }); | ||
| 450 | return false; | ||
| 451 | } | ||
| 452 | |||
| 453 | if (this.ruleForm.sldy.gyfs == "0") { | ||
| 454 | if (this.ruleForm.qlrList.length > 1) { | ||
| 455 | this.$message({ | ||
| 456 | showClose: true, | ||
| 457 | message: "共有方式:单独所有,权利人只能是一个人", | ||
| 458 | type: "error", | ||
| 459 | }); | ||
| 460 | return false; | ||
| 461 | } | ||
| 462 | this.ruleForm.qlrList[0].sfczr = "1"; | ||
| 463 | } else { | ||
| 464 | if (this.ruleForm.qlrList.length <= 1) { | ||
| 465 | this.$message({ | ||
| 466 | showClose: true, | ||
| 467 | message: | ||
| 468 | "共有方式:共同所有,按份所有,其他所有,权利人必须是两个以上", | ||
| 469 | type: "error", | ||
| 470 | }); | ||
| 471 | return false; | ||
| 472 | } | ||
| 473 | //是否分别持证 | ||
| 474 | if (this.ruleForm.sldy.sqfbcz == "1") { | ||
| 475 | //是 | ||
| 476 | this.ruleForm.qlrList.forEach((item, index) => { | ||
| 477 | item.sfczr = "1"; | ||
| 478 | }); | ||
| 479 | } else { | ||
| 480 | if (that.czr === '') { | ||
| 481 | that.$message({ | ||
| 482 | showClose: true, | ||
| 483 | message: "请选择持证人", | ||
| 484 | type: "error", | ||
| 485 | }); | ||
| 486 | return false; | ||
| 487 | } | ||
| 488 | this.ruleForm.qlrList.forEach((item, index) => { | ||
| 489 | if (item.id == that.czr) { | ||
| 490 | item.sfczr = "1"; | ||
| 491 | } else { | ||
| 492 | item.sfczr = "0"; | ||
| 493 | } | ||
| 494 | }); | ||
| 495 | } | ||
| 496 | } | ||
| 497 | this.$refs['ruleForm'].validate((valid) => { | ||
| 498 | if (valid) { | ||
| 499 | that.$store.dispatch("user/refreshPage", false); | ||
| 500 | saveData(that.ruleForm, that.propsParam.djlx).then((res) => { | ||
| 501 | if (res.code === 200) { | ||
| 502 | that.$message({ | ||
| 503 | showClose: true, | ||
| 504 | message: "保存成功!", | ||
| 505 | type: "success", | ||
| 506 | }); | ||
| 507 | that.$store.dispatch("user/refreshPage", true); | ||
| 508 | } else { | ||
| 509 | that.$message({ | ||
| 510 | showClose: true, | ||
| 511 | message: res.message, | ||
| 512 | type: "error", | ||
| 513 | }); | ||
| 514 | } | ||
| 515 | }) | ||
| 516 | } else { | ||
| 517 | that.$message({ | ||
| 518 | showClose: true, | ||
| 519 | message: "请输入登记原因", | ||
| 520 | type: "error" | ||
| 521 | }) | ||
| 522 | return false | ||
| 523 | } | ||
| 524 | }) | ||
| 525 | |||
| 526 | }, | ||
| 527 | /** | ||
| 528 | * @description: 更新权利人信息 | ||
| 529 | * @param {*} val | ||
| 530 | * @author: renchao | ||
| 531 | */ | ||
| 532 | upDateQlrxxList (val) { | ||
| 533 | if (!_.isEqual(val, this.ruleForm.qlrList)) { | ||
| 534 | this.ruleForm.qlrList = _.cloneDeep(val); | ||
| 535 | this.czrOptions = this.ruleForm.qlrList; | ||
| 536 | } | ||
| 537 | this.num = 0 | ||
| 538 | this.ruleForm.qlrList.forEach(item => { | ||
| 539 | if (item.id == this.czr) { | ||
| 540 | this.num++ | ||
| 541 | } | ||
| 542 | }) | ||
| 543 | if (this.num == 0) { | ||
| 544 | this.czr = '' | ||
| 545 | } | ||
| 546 | }, | ||
| 547 | // 是否持证人变化 | ||
| 548 | /** | ||
| 549 | * @description: 是否持证人变化 | ||
| 550 | * @param {*} val | ||
| 551 | * @author: renchao | ||
| 552 | */ | ||
| 553 | updaterow () { | ||
| 554 | this.czr = ""; | ||
| 555 | }, | ||
| 556 | /** | ||
| 557 | * @description: 更新义务人信息 | ||
| 558 | * @param {*} val | ||
| 559 | * @author: renchao | ||
| 560 | */ | ||
| 561 | upDateYwrxxList (val) { | ||
| 562 | if (!_.isEqual(val, this.ruleForm.ywrList)) { | ||
| 563 | this.ruleForm.ywrList = _.cloneDeep(val); | ||
| 564 | } | ||
| 565 | } | ||
| 566 | } | ||
| 567 | } | ||
| 568 | </script> | ||
| 569 | <style scoped lang="scss"> | ||
| 570 | @import "~@/styles/public.scss"; | ||
| 571 | @import "~@/styles/slxx/slxx.scss"; | ||
| 572 | </style> |
| ... | @@ -15,10 +15,10 @@ class data extends filter { | ... | @@ -15,10 +15,10 @@ class data extends filter { |
| 15 | } | 15 | } |
| 16 | columns () { | 16 | columns () { |
| 17 | return [ | 17 | return [ |
| 18 | { | 18 | // { |
| 19 | type: 'selection', | 19 | // type: 'selection', |
| 20 | label: '全选', | 20 | // label: '全选', |
| 21 | }, | 21 | // }, |
| 22 | { | 22 | { |
| 23 | label: '序号', | 23 | label: '序号', |
| 24 | type: 'index', | 24 | type: 'index', |
| ... | @@ -32,6 +32,19 @@ class data extends filter { | ... | @@ -32,6 +32,19 @@ class data extends filter { |
| 32 | } | 32 | } |
| 33 | }, | 33 | }, |
| 34 | { | 34 | { |
| 35 | prop: "bglx", | ||
| 36 | label: "变化情况", | ||
| 37 | minWidth: '80', | ||
| 38 | render: (h, scope) => { | ||
| 39 | switch (scope.row.bglx) { | ||
| 40 | case '1': | ||
| 41 | return <span>变更前</span> | ||
| 42 | case '2': | ||
| 43 | return <span>变更后</span> | ||
| 44 | } | ||
| 45 | } | ||
| 46 | }, | ||
| 47 | { | ||
| 35 | prop: "status", | 48 | prop: "status", |
| 36 | label: "状态", | 49 | label: "状态", |
| 37 | width: '130', | 50 | width: '130', | ... | ... |
-
Please register or sign in to post a comment