b8d1b9f6 by renchao@pashanhoo.com

Merge branch 'dev'

2 parents 9deae9f1 b7b5cde3
Showing 60 changed files with 1273 additions and 6215 deletions
...@@ -6,8 +6,11 @@ ...@@ -6,8 +6,11 @@
6 import request from '@/utils/request' 6 import request from '@/utils/request'
7 let SERVER = window.config ? window.config : JSON.parse(localStorage.getItem('ApiUrl')) 7 let SERVER = window.config ? window.config : JSON.parse(localStorage.getItem('ApiUrl'))
8 8
9 9 /**
10 // 数据上报推送查询 10 * @description: 数据上报推送查询
11 * @param {*} data
12 * @author: renchao
13 */
11 export function list (data) { 14 export function list (data) {
12 return request({ 15 return request({
13 url: SERVER.SERVERAPI + '/rest/system/sysPushRecord/list', 16 url: SERVER.SERVERAPI + '/rest/system/sysPushRecord/list',
...@@ -16,7 +19,11 @@ export function list (data) { ...@@ -16,7 +19,11 @@ export function list (data) {
16 }) 19 })
17 } 20 }
18 21
19 // 数据上报推送 22 /**
23 * @description: 数据上报推送
24 * @param {*} data
25 * @author: renchao
26 */
20 export function push (data) { 27 export function push (data) {
21 return request({ 28 return request({
22 url: SERVER.SERVERAPI + '/rest/system/sysPushRecord/push', 29 url: SERVER.SERVERAPI + '/rest/system/sysPushRecord/push',
...@@ -25,7 +32,11 @@ export function push (data) { ...@@ -25,7 +32,11 @@ export function push (data) {
25 }) 32 })
26 } 33 }
27 34
28 // 数据上报推送 35 /**
36 * @description: 数据上报推送
37 * @param {*} bsm
38 * @author: renchao
39 */
29 export function detail (bsm) { 40 export function detail (bsm) {
30 return request({ 41 return request({
31 url: SERVER.SERVERAPI + '/rest/system/sysPushRecord/detail?bsm=' + bsm, 42 url: SERVER.SERVERAPI + '/rest/system/sysPushRecord/detail?bsm=' + bsm,
......
1 /* 1 /*
2 * @Description: 2 * @Description:
3 * @Autor: renchao 3 * @Autor: renchao
4 * @LastEditTime: 2023-05-17 10:25:58 4 * @LastEditTime: 2023-05-17 10:25:58
5 */ 5 */
...@@ -31,6 +31,11 @@ export function BatchInit (data) { ...@@ -31,6 +31,11 @@ export function BatchInit (data) {
31 }) 31 })
32 } 32 }
33 33
34 /**
35 * @description: 初始化
36 * @param {*} data
37 * @author: renchao
38 */
34 export function Init (data) { 39 export function Init (data) {
35 let apiUrl = ""; 40 let apiUrl = "";
36 switch (data.get("djlx")) { 41 switch (data.get("djlx")) {
......
...@@ -6,7 +6,11 @@ ...@@ -6,7 +6,11 @@
6 import request from '@/utils/request' 6 import request from '@/utils/request'
7 let SERVER = window.config ? window.config : JSON.parse(localStorage.getItem('ApiUrl')) 7 let SERVER = window.config ? window.config : JSON.parse(localStorage.getItem('ApiUrl'))
8 8
9 // 初始化内容 9 /**
10 * @description: 初始化
11 * @param {*} data
12 * @author: renchao
13 */
10 export function Init (data) { 14 export function Init (data) {
11 let apiUrl = ""; 15 let apiUrl = "";
12 switch (data.get("djlx")) { 16 switch (data.get("djlx")) {
......
1 /* 1 /*
2 * @Description: 2 * @Description:
3 * @Autor: renchao 3 * @Autor: renchao
4 * @LastEditTime: 2023-05-17 10:32:29 4 * @LastEditTime: 2023-05-17 10:32:29
5 */ 5 */
6 import request from '@/utils/request' 6 import request from '@/utils/request'
7 let SERVER = window.config ? window.config : JSON.parse(localStorage.getItem('ApiUrl')) 7 let SERVER = window.config ? window.config : JSON.parse(localStorage.getItem('ApiUrl'))
8 8
9 // 初始化内容 9 /**
10 * @description: 初始化
11 * @param {*} data
12 * @author: renchao
13 */
10 export function Init (data) { 14 export function Init (data) {
11 let apiUrl = ""; 15 let apiUrl = "";
12 switch (data.get("djlx")) { 16 switch (data.get("djlx")) {
...@@ -39,7 +43,11 @@ export function Init (data) { ...@@ -39,7 +43,11 @@ export function Init (data) {
39 }) 43 })
40 } 44 }
41 45
42 // 初始化内容 46 /**
47 * @description: 保存数据
48 * @param {*} data
49 * @author: renchao
50 */
43 export function saveData (data) { 51 export function saveData (data) {
44 return request({ 52 return request({
45 url: SERVER.SERVERAPI + '/rest/ywbl/nydsyqlr/saveData', 53 url: SERVER.SERVERAPI + '/rest/ywbl/nydsyqlr/saveData',
......
...@@ -6,7 +6,11 @@ ...@@ -6,7 +6,11 @@
6 import request from '@/utils/request' 6 import request from '@/utils/request'
7 let SERVER = window.config ? window.config : JSON.parse(localStorage.getItem('ApiUrl')) 7 let SERVER = window.config ? window.config : JSON.parse(localStorage.getItem('ApiUrl'))
8 8
9 // 初始化内容 9 /**
10 * @description: 初始化
11 * @param {*} data
12 * @author: renchao
13 */
10 export function Init (data) { 14 export function Init (data) {
11 let apiUrl = ""; 15 let apiUrl = "";
12 switch (data.get("djlx")) { 16 switch (data.get("djlx")) {
......
1 /* 1 /*
2 * @Description: 2 * @Description:
3 * @Autor: renchao 3 * @Autor: renchao
4 * @LastEditTime: 2023-05-17 10:32:37 4 * @LastEditTime: 2023-05-17 10:32:37
5 */ 5 */
6 import request from '@/utils/request' 6 import request from '@/utils/request'
7 let SERVER = window.config ? window.config : JSON.parse(localStorage.getItem('ApiUrl')) 7 let SERVER = window.config ? window.config : JSON.parse(localStorage.getItem('ApiUrl'))
8 // 初始化内容 8 /**
9 * @description: 初始化
10 * @param {*} data
11 * @author: renchao
12 */
9 export function Init (data) { 13 export function Init (data) {
10 let apiUrl = ""; 14 let apiUrl = "";
11 switch (data.get("djlx")) { 15 switch (data.get("djlx")) {
...@@ -37,7 +41,11 @@ export function Init (data) { ...@@ -37,7 +41,11 @@ export function Init (data) {
37 data 41 data
38 }) 42 })
39 } 43 }
40 // 初始化内容 44 /**
45 * @description: 保存数据
46 * @param {*} data
47 * @author: renchao
48 */
41 export function saveData (data) { 49 export function saveData (data) {
42 return request({ 50 return request({
43 url: SERVER.SERVERAPI + '/rest/ywbl/ygmmdj/saveData', 51 url: SERVER.SERVERAPI + '/rest/ywbl/ygmmdj/saveData',
......
1 /* 1 /*
2 * @Description: 2 * @Description:
3 * @Autor: renchao 3 * @Autor: renchao
4 * @LastEditTime: 2023-05-17 10:32:41 4 * @LastEditTime: 2023-05-17 10:32:41
5 */ 5 */
6 import request from '@/utils/request' 6 import request from '@/utils/request'
7 let SERVER = window.config ? window.config : JSON.parse(localStorage.getItem('ApiUrl')) 7 let SERVER = window.config ? window.config : JSON.parse(localStorage.getItem('ApiUrl'))
8 // 初始化内容 8 /**
9 * @description: 初始化
10 * @param {*} data
11 * @author: renchao
12 */
9 export function Init (data) { 13 export function Init (data) {
10 let apiUrl = ""; 14 let apiUrl = "";
11 switch (data.get("djlx")) { 15 switch (data.get("djlx")) {
...@@ -37,7 +41,11 @@ export function Init (data) { ...@@ -37,7 +41,11 @@ export function Init (data) {
37 data 41 data
38 }) 42 })
39 } 43 }
40 // 初始化内容 44 /**
45 * @description: 保存数据
46 * @param {*} data
47 * @author: renchao
48 */
41 export function saveData (data) { 49 export function saveData (data) {
42 return request({ 50 return request({
43 url: SERVER.SERVERAPI + '/rest/ywbl/ygdydj/saveData', 51 url: SERVER.SERVERAPI + '/rest/ywbl/ygdydj/saveData',
......
...@@ -6,7 +6,11 @@ ...@@ -6,7 +6,11 @@
6 import request from '@/utils/request' 6 import request from '@/utils/request'
7 let SERVER = window.config ? window.config : JSON.parse(localStorage.getItem('ApiUrl')) 7 let SERVER = window.config ? window.config : JSON.parse(localStorage.getItem('ApiUrl'))
8 8
9 // 初始化内容 9 /**
10 * @description: 初始化
11 * @param {*} data
12 * @author: renchao
13 */
10 export function Init (data) { 14 export function Init (data) {
11 return request({ 15 return request({
12 url: SERVER.SERVERAPI + "/rest/ywbl/zjgcdy/init", 16 url: SERVER.SERVERAPI + "/rest/ywbl/zjgcdy/init",
...@@ -14,7 +18,11 @@ export function Init (data) { ...@@ -14,7 +18,11 @@ export function Init (data) {
14 data 18 data
15 }) 19 })
16 } 20 }
17 // 批量初始化内容 21 /**
22 * @description: 批量初始化
23 * @param {*} data
24 * @author: renchao
25 */
18 export function bacthInit (data) { 26 export function bacthInit (data) {
19 let apiUrl = ""; 27 let apiUrl = "";
20 switch (data.get("djlx")) { 28 switch (data.get("djlx")) {
...@@ -46,7 +54,11 @@ export function bacthInit (data) { ...@@ -46,7 +54,11 @@ export function bacthInit (data) {
46 data 54 data
47 }) 55 })
48 } 56 }
49 // 受理信息保存 57 /**
58 * @description: 保存数据
59 * @param {*} data
60 * @author: renchao
61 */
50 export function saveData (data, djlx) { 62 export function saveData (data, djlx) {
51 let apiUrl = "/rest/ywbl/zjgcdy/saveData"; 63 let apiUrl = "/rest/ywbl/zjgcdy/saveData";
52 if (djlx == "400") { 64 if (djlx == "400") {
...@@ -59,7 +71,11 @@ export function saveData (data, djlx) { ...@@ -59,7 +71,11 @@ export function saveData (data, djlx) {
59 }) 71 })
60 } 72 }
61 73
62 // 受理信息保存 74 /**
75 * @description: 批量保存
76 * @param {*} data
77 * @author: renchao
78 */
63 export function saveBatchData (data, djlx) { 79 export function saveBatchData (data, djlx) {
64 return request({ 80 return request({
65 url: SERVER.SERVERAPI + "/rest/ywbl/zjgcdy/saveBatchData", 81 url: SERVER.SERVERAPI + "/rest/ywbl/zjgcdy/saveBatchData",
...@@ -67,7 +83,12 @@ export function saveBatchData (data, djlx) { ...@@ -67,7 +83,12 @@ export function saveBatchData (data, djlx) {
67 data 83 data
68 }) 84 })
69 } 85 }
70 // 上传单个文件 86
87 /**
88 * @description: 上传当个文件
89 * @param {*} data
90 * @author: renchao
91 */
71 export function sjClmxUpload (data) { 92 export function sjClmxUpload (data) {
72 return request({ 93 return request({
73 url: SERVER.SERVERAPI + '/rest/zhcx/sjClmx/upload', 94 url: SERVER.SERVERAPI + '/rest/zhcx/sjClmx/upload',
...@@ -75,7 +96,12 @@ export function sjClmxUpload (data) { ...@@ -75,7 +96,12 @@ export function sjClmxUpload (data) {
75 data 96 data
76 }) 97 })
77 } 98 }
78 // 删除上传文件 99
100 /**
101 * @description: 删除多个文件
102 * @param {*} data
103 * @author: renchao
104 */
79 export function sjClmxDelete (bsmClmx) { 105 export function sjClmxDelete (bsmClmx) {
80 return request({ 106 return request({
81 url: SERVER.SERVERAPI + '/rest/zhcx/sjClmx/delete?bsmClmx=' + bsmClmx, 107 url: SERVER.SERVERAPI + '/rest/zhcx/sjClmx/delete?bsmClmx=' + bsmClmx,
......
...@@ -54,12 +54,20 @@ export default { ...@@ -54,12 +54,20 @@ export default {
54 54
55 computed: { 55 computed: {
56 model: { 56 model: {
57 /**
58 * @description: get
59 * @author: renchao
60 */
57 get () { 61 get () {
58 return this.isGroup 62 return this.isGroup
59 ? this.store : this.value !== undefined 63 ? this.store : this.value !== undefined
60 ? this.value : this.selfModel; 64 ? this.value : this.selfModel;
61 }, 65 },
62 66 /**
67 * @description: set
68 * @param {*} val
69 * @author: renchao
70 */
63 set (val) { 71 set (val) {
64 if (this.isGroup) { 72 if (this.isGroup) {
65 this.isLimitExceeded = false; 73 this.isLimitExceeded = false;
...@@ -80,6 +88,10 @@ export default { ...@@ -80,6 +88,10 @@ export default {
80 } 88 }
81 }, 89 },
82 90
91 /**
92 * @description: isChecked
93 * @author: renchao
94 */
83 isChecked () { 95 isChecked () {
84 if ({}.toString.call(this.model) === '[object Boolean]') { 96 if ({}.toString.call(this.model) === '[object Boolean]') {
85 return this.model; 97 return this.model;
...@@ -89,7 +101,10 @@ export default { ...@@ -89,7 +101,10 @@ export default {
89 return this.model === this.trueLabel; 101 return this.model === this.trueLabel;
90 } 102 }
91 }, 103 },
92 104 /**
105 * @description: isGroup
106 * @author: renchao
107 */
93 isGroup () { 108 isGroup () {
94 let parent = this.$parent; 109 let parent = this.$parent;
95 while (parent) { 110 while (parent) {
...@@ -102,29 +117,44 @@ export default { ...@@ -102,29 +117,44 @@ export default {
102 } 117 }
103 return false; 118 return false;
104 }, 119 },
105 120 /**
121 * @description: store
122 * @author: renchao
123 */
106 store () { 124 store () {
107 return this._checkboxGroup ? this._checkboxGroup.value : this.value; 125 return this._checkboxGroup ? this._checkboxGroup.value : this.value;
108 }, 126 },
109 127
110 /* used to make the isDisabled judgment under max/min props */ 128 /**
129 * @description: isLimitDisabled
130 * @author: renchao
131 */
111 isLimitDisabled () { 132 isLimitDisabled () {
112 const { max, min } = this._checkboxGroup; 133 const { max, min } = this._checkboxGroup;
113 return !!(max || min) && 134 return !!(max || min) &&
114 (this.model.length >= max && !this.isChecked) || 135 (this.model.length >= max && !this.isChecked) ||
115 (this.model.length <= min && this.isChecked); 136 (this.model.length <= min && this.isChecked);
116 }, 137 },
117 138 /**
139 * @description: isDisabled
140 * @author: renchao
141 */
118 isDisabled () { 142 isDisabled () {
119 return this.isGroup 143 return this.isGroup
120 ? this._checkboxGroup.disabled || this.disabled || (this.elForm || {}).disabled || this.isLimitDisabled 144 ? this._checkboxGroup.disabled || this.disabled || (this.elForm || {}).disabled || this.isLimitDisabled
121 : this.disabled || (this.elForm || {}).disabled; 145 : this.disabled || (this.elForm || {}).disabled;
122 }, 146 },
123 147 /**
148 * @description: _elFormItemSize
149 * @author: renchao
150 */
124 _elFormItemSize () { 151 _elFormItemSize () {
125 return (this.elFormItem || {}).elFormItemSize; 152 return (this.elFormItem || {}).elFormItemSize;
126 }, 153 },
127 154 /**
155 * @description: checkboxSize
156 * @author: renchao
157 */
128 checkboxSize () { 158 checkboxSize () {
129 const temCheckboxSize = this.size || this._elFormItemSize || (this.$ELEMENT || {}).size; 159 const temCheckboxSize = this.size || this._elFormItemSize || (this.$ELEMENT || {}).size;
130 return this.isGroup 160 return this.isGroup
...@@ -149,6 +179,10 @@ export default { ...@@ -149,6 +179,10 @@ export default {
149 }, 179 },
150 180
151 methods: { 181 methods: {
182 /**
183 * @description: addToStore
184 * @author: renchao
185 */
152 addToStore () { 186 addToStore () {
153 if ( 187 if (
154 Array.isArray(this.model) && 188 Array.isArray(this.model) &&
...@@ -159,6 +193,10 @@ export default { ...@@ -159,6 +193,10 @@ export default {
159 this.model = this.trueLabel || true; 193 this.model = this.trueLabel || true;
160 } 194 }
161 }, 195 },
196 /**
197 * @description: handleChange
198 * @author: renchao
199 */
162 handleChange (ev) { 200 handleChange (ev) {
163 if (this.isLimitExceeded) return; 201 if (this.isLimitExceeded) return;
164 let value; 202 let value;
...@@ -175,16 +213,26 @@ export default { ...@@ -175,16 +213,26 @@ export default {
175 }); 213 });
176 } 214 }
177 }, 215 },
178 216 /**
217 * @description: created
218 * @author: renchao
219 */
179 created () { 220 created () {
180 this.checked && this.addToStore(); 221 this.checked && this.addToStore();
181 }, 222 },
223 /**
224 * @description: mounted
225 * @author: renchao
226 */
182 mounted () { // 为indeterminate元素 添加aria-controls 属性 227 mounted () { // 为indeterminate元素 添加aria-controls 属性
183 if (this.indeterminate) { 228 if (this.indeterminate) {
184 this.$el.setAttribute('aria-controls', this.controls); 229 this.$el.setAttribute('aria-controls', this.controls);
185 } 230 }
186 }, 231 },
187 232 /**
233 * @description: watch
234 * @author: renchao
235 */
188 watch: { 236 watch: {
189 value (value) { 237 value (value) {
190 this.dispatch('ElFormItem', 'el.form.change', value); 238 this.dispatch('ElFormItem', 'el.form.change', value);
......
...@@ -92,6 +92,10 @@ export default { ...@@ -92,6 +92,10 @@ export default {
92 } 92 }
93 }, 93 },
94 methods: { 94 methods: {
95 /**
96 * @description: handleFullscreen
97 * @author: renchao
98 */
95 handleFullscreen () { 99 handleFullscreen () {
96 this.fullscreen = !this.fullscreen 100 this.fullscreen = !this.fullscreen
97 if (!this.fullscreen) { 101 if (!this.fullscreen) {
...@@ -100,11 +104,19 @@ export default { ...@@ -100,11 +104,19 @@ export default {
100 this.scrollerHeight = (window.innerHeight - 120) + 'px' 104 this.scrollerHeight = (window.innerHeight - 120) + 'px'
101 } 105 }
102 }, 106 },
107 /**
108 * @description: submitForm
109 * @author: renchao
110 */
103 submitForm () { 111 submitForm () {
104 if (this.isButton) { 112 if (this.isButton) {
105 this.$emit('submitForm'); 113 this.$emit('submitForm');
106 } 114 }
107 }, 115 },
116 /**
117 * @description: closeDialog
118 * @author: renchao
119 */
108 closeDialog () { 120 closeDialog () {
109 this.key++ 121 this.key++
110 this.$emit('input', false) 122 this.$emit('input', false)
...@@ -124,4 +136,4 @@ export default { ...@@ -124,4 +136,4 @@ export default {
124 left: 50% !important; 136 left: 50% !important;
125 transform: translate(-50%, -50%) !important; 137 transform: translate(-50%, -50%) !important;
126 } 138 }
127 </style>
...\ No newline at end of file ...\ No newline at end of file
139 </style>
......
...@@ -106,6 +106,11 @@ ...@@ -106,6 +106,11 @@
106 components: { 106 components: {
107 LbColumn, 107 LbColumn,
108 }, 108 },
109
110 /**
111 * @description: data
112 * @author: renchao
113 */
109 data () { 114 data () {
110 return { 115 return {
111 tableHeight: 'auto', 116 tableHeight: 'auto',
...@@ -114,6 +119,10 @@ ...@@ -114,6 +119,10 @@
114 selected: '' 119 selected: ''
115 } 120 }
116 }, 121 },
122 /**
123 * @description: created
124 * @author: renchao
125 */
117 created () { 126 created () {
118 this.getMergeArr(this.data, this.merge) 127 this.getMergeArr(this.data, this.merge)
119 this.getHeight() 128 this.getHeight()
...@@ -124,17 +133,29 @@ ...@@ -124,17 +133,29 @@
124 }, 133 },
125 }, 134 },
126 methods: { 135 methods: {
127 // 单选 136 /**
137 * @description: 单选
138 * @param {*} row
139 * @author: renchao
140 */
128 singleElection (row) { 141 singleElection (row) {
129 this.selected = this.data.indexOf(row); 142 this.selected = this.data.indexOf(row);
130 // this.$emit('row-click', row) 143 // this.$emit('row-click', row)
131 }, 144 },
132 145
146 /**
147 * @description: tableRowClassName
148 * @author: renchao
149 */
133 tableRowClassName ({ row, rowIndex }) { 150 tableRowClassName ({ row, rowIndex }) {
134 if (rowIndex % 2 === 1) { 151 if (rowIndex % 2 === 1) {
135 return 'interlaced'; 152 return 'interlaced';
136 } 153 }
137 }, 154 },
155 /**
156 * @description: getHeight
157 * @author: renchao
158 */
138 getHeight () { 159 getHeight () {
139 if (!this.heightNumSetting) { 160 if (!this.heightNumSetting) {
140 let _this = this 161 let _this = this
...@@ -170,6 +191,12 @@ ...@@ -170,6 +191,12 @@
170 }) 191 })
171 } 192 }
172 }, 193 },
194 /**
195 * @description: calcHeightx
196 * @param {*} value
197 * @param {*} wappered
198 * @author: renchao
199 */
173 calcHeightx (value, wappered = true) { 200 calcHeightx (value, wappered = true) {
174 //项目自定义的公共header部分的高度,可忽略 201 //项目自定义的公共header部分的高度,可忽略
175 let header = document.querySelector(".from-clues-header").offsetHeight; 202 let header = document.querySelector(".from-clues-header").offsetHeight;
...@@ -195,36 +222,89 @@ ...@@ -195,36 +222,89 @@
195 } 222 }
196 return res; 223 return res;
197 }, 224 },
225 /**
226 * @description: clearSelection
227 * @author: renchao
228 */
198 clearSelection () { 229 clearSelection () {
199 this.$refs.elTable.clearSelection() 230 this.$refs.elTable.clearSelection()
200 }, 231 },
232 /**
233 * @description: toggleRowSelection
234 * @author: renchao
235 */
201 toggleRowSelection (row, selected) { 236 toggleRowSelection (row, selected) {
202 this.$refs.elTable.toggleRowSelection(row, selected) 237 this.$refs.elTable.toggleRowSelection(row, selected)
203 }, 238 },
239 /**
240 * @description: toggleAllSelection
241 * @author: renchao
242 */
204 toggleAllSelection () { 243 toggleAllSelection () {
205 this.$refs.elTable.toggleAllSelection() 244 this.$refs.elTable.toggleAllSelection()
206 }, 245 },
246 /**
247 * @description: toggleRowExpansion
248 * @param {*} row
249 * @param {*} bsm
250 * @author: renchao
251 */
207 toggleRowExpansion (row, expanded) { 252 toggleRowExpansion (row, expanded) {
208 this.$refs.elTable.toggleRowExpansion(row, expanded) 253 this.$refs.elTable.toggleRowExpansion(row, expanded)
209 }, 254 },
255 /**
256 * @description: setCurrentRow
257 * @param {*} row
258 * @author: renchao
259 */
210 setCurrentRow (row) { 260 setCurrentRow (row) {
211 this.$refs.elTable.setCurrentRow(row) 261 this.$refs.elTable.setCurrentRow(row)
212 }, 262 },
263 /**
264 * @description: setCurrentRow
265 * @author: renchao
266 */
213 clearSort () { 267 clearSort () {
214 this.$refs.elTable.clearSort() 268 this.$refs.elTable.clearSort()
215 }, 269 },
270 /**
271 * @description: clearFilter
272 * @param {*} columnKey
273 * @author: renchao
274 */
216 clearFilter (columnKey) { 275 clearFilter (columnKey) {
217 this.$refs.elTable.clearFilter(columnKey) 276 this.$refs.elTable.clearFilter(columnKey)
218 }, 277 },
278 /**
279 * @description: doLayout
280 * @author: renchao
281 */
219 doLayout () { 282 doLayout () {
220 this.$refs.elTable.doLayout() 283 this.$refs.elTable.doLayout()
221 }, 284 },
285 /**
286 * @description: sort
287 * @param {*} prop
288 * @param {*} order
289 * @author: renchao
290 */
222 sort (prop, order) { 291 sort (prop, order) {
223 this.$refs.elTable.sort(prop, order) 292 this.$refs.elTable.sort(prop, order)
224 }, 293 },
294 /**
295 * @description: paginationCurrentChange
296 * @param {*} val
297 * @author: renchao
298 */
225 paginationCurrentChange (val) { 299 paginationCurrentChange (val) {
226 this.$emit('p-current-change', val) 300 this.$emit('p-current-change', val)
227 }, 301 },
302 /**
303 * @description: getMergeArr
304 * @param {*} tableData
305 * @param {*} merge
306 * @author: renchao
307 */
228 getMergeArr (tableData, merge) { 308 getMergeArr (tableData, merge) {
229 if (!merge) return 309 if (!merge) return
230 this.mergeLine = {} 310 this.mergeLine = {}
...@@ -247,6 +327,10 @@ ...@@ -247,6 +327,10 @@
247 }) 327 })
248 }) 328 })
249 }, 329 },
330 /**
331 * @description: mergeMethod
332 * @author: renchao
333 */
250 mergeMethod ({ row, column, rowIndex, columnIndex }) { 334 mergeMethod ({ row, column, rowIndex, columnIndex }) {
251 const index = this.merge.indexOf(column.property) 335 const index = this.merge.indexOf(column.property)
252 if (index > -1) { 336 if (index > -1) {
...@@ -260,9 +344,17 @@ ...@@ -260,9 +344,17 @@
260 }, 344 },
261 }, 345 },
262 watch: { 346 watch: {
347 /**
348 * @description: merge
349 * @author: renchao
350 */
263 merge () { 351 merge () {
264 this.getMergeArr(this.data, this.merge) 352 this.getMergeArr(this.data, this.merge)
265 }, 353 },
354 /**
355 * @description: dataLength
356 * @author: renchao
357 */
266 dataLength () { 358 dataLength () {
267 this.getMergeArr(this.data, this.merge) 359 this.getMergeArr(this.data, this.merge)
268 } 360 }
......
1 <template>
2 <div class="temp">
3 <table class="tempTable" cellspacing="0" cellpadding="0" border="1">
4 <tr>
5 <template v-if="lq == ''">
6 <td colspan="2"><span class="table-title">权利人信息</span></td>
7 <td colspan="2">共有方式</td>
8 </template>
9 <template v-else>
10 <td colspan="2">共有方式</td>
11 </template>
12 <td :colspan="lq == '' ? 8 : 10">
13 <el-row>
14 <el-col :span="14" class="fl" style="line-height:32px">
15 <el-radio-group v-model="gyfs" @change="updateGyfs">
16 <el-radio :label="item.bsm" :disabled="+qszt !== 0 || item.disabled" :key="item.bsm"
17 v-for="item in gyfsList">{{ item.mc }}</el-radio>
18 </el-radio-group>
19 </el-col>
20 <el-col :span="10" class="fr">
21 <!-- <div v-show="qszt=='0'" class="fr" style="margin-right:20px">
22 <el-button class="qlrBtn" size="mini" @click="addRow">
23 <i class="iconfont iconxinzeng"></i> 新增
24 </el-button>
25 <el-button class="qlrBtn" size="mini" @click="changeRow">
26 <i class="iconfont iconbianji"></i> 编辑
27 </el-button>
28 <el-button class="qlrBtn" size="mini" @click="delRow">
29 <i class="iconfont iconshanchu"></i> 删除
30 </el-button>
31 </div>-->
32 <div v-show="+qszt === 0" class="fr" style="margin-right:20px">
33 <el-button class="qlrBtn" size="mini"
34 :disabled="+qszt !== 0 || (tableData.length > 0 && gyfs === 'PSHGSBDCQJDC000000000000DC340010')"
35 @click="addRow">
36 <i class="iconfont iconxinzeng" :disabled="+qszt !== 0"></i> 新增
37 </el-button>
38 <el-button class="qlrBtn" size="mini" :disabled="+qszt !== 0" @click="changeRow">
39 <i class="iconfont iconbianji"></i> 编辑
40 </el-button>
41 <el-button class="qlrBtn" size="mini" :disabled="+qszt !== 0" @click="delRow">
42 <i class="iconfont iconshanchu"></i> 删除
43 </el-button>
44 </div>
45 </el-col>
46 </el-row>
47 </td>
48 </tr>
49 </table>
50
51 <el-table class="qlrTable" :data="tableData" style="width: 100%" @selection-change="handleSelectionChange"
52 @row-dblclick="rowDbclick" border>
53 <el-table-column type="selection" width="40" align="center">
54 </el-table-column>
55 <el-table-column prop="qlrmc" label="权利人名称" align="center">
56 </el-table-column>
57 <el-table-column prop="qlrlxbsm_dictText" label="权利人类型" align="center">
58 </el-table-column>
59 <el-table-column prop="zjzlbsm_dictText" label="证件种类" align="center">
60 </el-table-column>
61 <el-table-column prop="zjh" label="证件号" align="center">
62 </el-table-column>
63 <el-table-column prop="dz" label="通讯地址" align="center">
64 </el-table-column>
65 <el-table-column prop="dh" label="联系电话" align="center">
66 </el-table-column>
67 </el-table>
68 <el-dialog :close-on-click-modal="false" title="权利人信息" :visible.sync="dialogVisible" custom-class="insetDialog"
69 append-to-body width="50%">
70 <el-form :model="formData" class="qlrForm">
71 <table class="zdjbxxTable" cellspacing="0" cellpadding="0" border="1">
72 <tr>
73 <td colspan="4" class="tdright"><i class="requisite">*</i>权利人名称</td>
74 <td colspan="6">
75 <el-input v-model="formData.qlrmc" ref="qlrmc" @blur="inputBlur($event)"></el-input>
76 </td>
77 <td colspan="4" class="tdright"><i class="requisite">*</i>权利人类型</td>
78 <td colspan="6">
79 <el-select class="formSelect" v-model="formData.qlrlxbsm" ref="qlrlxbsm">
80 <el-option v-for="item in $store.state.qlrlxList" :key="item.bsm" :label="item.mc" :value="item.bsm">
81 </el-option>
82 </el-select>
83 </td>
84 </tr>
85 <tr>
86 <td colspan="4" class="tdright"><i class="requisite">*</i>证件类型</td>
87 <td colspan="6">
88 <el-select class="formSelect" v-model="formData.zjzlbsm" ref="zjzlbsm">
89 <el-option v-for="item in $store.state.zjzlList" :key="item.bsm" :label="item.mc" :value="item.bsm">
90 </el-option>
91 </el-select>
92 </td>
93 <td colspan="4" class="tdright"><i class="requisite">*</i>证件号</td>
94 <td colspan="6">
95 <el-input maxlength="18" v-model="formData.zjh" ref="zjh" @blur="inputBlur($event)"></el-input>
96 </td>
97 </tr>
98 <tr>
99 <td colspan="4" class="tdright"><i class="requisite">*</i>电话</td>
100 <td colspan="6">
101 <!-- @blur="inputBlur($event)"-->
102 <el-input v-model="formData.dh" ref="dh" @blur="inputBlur($event)"></el-input>
103 </td>
104 <td colspan="4" class="tdright"><i class="requisite">*</i>地址</td>
105 <td colspan="6">
106 <el-input v-model="formData.dz" ref="dz" @blur="inputBlur($event)"></el-input>
107 </td>
108 </tr>
109 <tr>
110 <td colspan="4" class="tdright">国家</td>
111 <td colspan="6">
112 <el-select class="formSelect" v-model="formData.gjbsm">
113 <el-option v-for="item in $store.state.gjList" :key="item.bsm" :label="item.mc" :value="item.bsm">
114 </el-option>
115 </el-select>
116 </td>
117 <td colspan="4" class="tdright">户籍所在省市</td>
118 <td colspan="6">
119 <el-select class="formSelect" v-model="formData.hjszssbsm">
120 <el-option v-for="item in $store.state.ssList" :key="item.bsm" :label="item.mc" :value="item.bsm">
121 </el-option>
122 </el-select>
123 </td>
124 </tr>
125 <tr>
126 <td colspan="4" class="tdright">性别</td>
127 <td colspan="6">
128 <el-select class="formSelect" v-model="formData.xbbsm">
129 <el-option v-for="item in $store.state.xbList" :key="item.bsm" :label="item.mc" :value="item.bsm">
130 </el-option>
131 </el-select>
132 </td>
133 <td colspan="4" class="tdright">邮编</td>
134 <td colspan="6">
135 <el-input v-model="formData.yb" />
136 </td>
137 </tr>
138 <tr>
139 <td colspan="4" class="tdright">所属行业</td>
140 <td colspan="6">
141 <el-select class="formSelect" v-model="formData.sshy">
142 <el-option v-for="item in $store.state.sshyList" :key="item.bsm" :label="item.mc" :value="item.bsm">
143 </el-option>
144 </el-select>
145 </td>
146 <td colspan="4" class="tdright">电子邮件</td>
147 <td colspan="6">
148 <el-input v-model="formData.dzyj" />
149 </td>
150 </tr>
151 <tr>
152 <th colspan="20">法人信息</th>
153 </tr>
154 <tr>
155 <td colspan="4" class="tdright">法定代表人或负责人姓名</td>
156 <td colspan="6">
157 <el-input v-model="formData.fr.dlrfrmc" />
158 </td>
159 <td colspan="4" class="tdright">证件类型</td>
160 <td colspan="6">
161 <el-select class="formSelect" v-model="formData.fr.zjzlbsm">
162 <el-option v-for="item in $store.state.zjzlList" :key="item.bsm" :label="item.mc" :value="item.bsm">
163 </el-option>
164 </el-select>
165 </td>
166 </tr>
167 <tr>
168 <td colspan="4" class="tdright">证件号码</td>
169 <td colspan="6">
170 <el-input v-model="formData.fr.zjh" />
171 </td>
172 <td colspan="4" class="tdright">电话</td>
173 <td colspan="6">
174 <el-input v-model="formData.fr.dh" />
175 </td>
176 </tr>
177 <tr>
178 <th colspan="20">代理人信息</th>
179 </tr>
180 <template v-for="(item, index) in formData.dlrList">
181 <tr :key="item.index">
182 <td :rowspan="(formData.dlrList.length - 1) * 2 + 2" v-if="index == 0" class="btnCol">
183 <span :style="{ 'padding-top': (formData.dlrList.length - 1) * 36 + 20 + 'px' }">
184 <i v-show="index == 0" class="iconfont iconicon-test2" @click="handleClick(item, index, 'add')"></i>
185 </span>
186 <!-- <div class="line" v-show=" index != formData.dlrList.length-1"></div> -->
187 </td>
188 <td rowspan="2" class="minusBtnCol">
189 <span>
190 <i class="iconfont icon-" @click="handleClick(item, index, 'minus')"></i>
191 </span>
192 </td>
193 <td class="tdright" colspan="2">代理人姓名</td>
194 <td colspan="6">
195 <el-input v-model="item.dlrfrmc" />
196 </td>
197 <td colspan="4" class="tdright">证件类型</td>
198 <td colspan="6">
199 <el-select class="formSelect" v-model="item.zjzlbsm">
200 <el-option v-for="item in $store.state.zjzlList" :key="item.bsm" :label="item.mc" :value="item.bsm">
201 </el-option>
202 </el-select>
203 </td>
204 </tr>
205 <!-- <tr :key="item.dh">-->
206 <tr :key="'dh' + index">
207 <td class="tdright" colspan="2">证件号码</td>
208 <td colspan="6">
209 <el-input v-model="item.zjh" />
210 </td>
211 <td colspan="4" class="tdright">电话</td>
212 <td colspan="6">
213 <el-input v-model="item.dh" />
214 </td>
215 </tr>
216 </template>
217
218 <tr>
219 <th colspan="20">权利信息</th>
220 </tr>
221 <tr>
222 <td colspan="4" class="tdright">共有方式</td>
223 <td colspan="6">
224 <el-select class="formSelect" v-model="formData.gyfsbsm" disabled>
225 <el-option v-for="item in $store.state.gyfsList" :key="item.bsm" :label="item.mc" :value="item.bsm">
226 </el-option>
227 </el-select>
228 </td>
229 <td colspan="4" class="tdright">权利比例(%)</td>
230 <td colspan="6">
231 <el-input v-model="formData.qlbl"></el-input>
232 </td>
233 </tr>
234 <tr>
235 <td colspan="4" class="tdright">房产证号</td>
236 <td colspan="6">
237 <el-input v-model="formData.fczh"></el-input>
238 </td>
239 <td colspan="4" class="tdright">土地证号</td>
240 <td colspan="6">
241 <el-input v-model="formData.tdzh"></el-input>
242 </td>
243 </tr>
244 <tr>
245 <td colspan="4" class="tdright">共有情况</td>
246 <td colspan="12">
247 <el-input v-model="formData.gyqk"></el-input>
248 </td>
249 </tr>
250 </table>
251 </el-form>
252 <div class="dialog-footer">
253 <el-button type="primary" @click="addNewQlrInfo">确 定</el-button>
254 <el-button @click="dialogVisible = false">取 消</el-button>
255 </div>
256 </el-dialog>
257 </div>
258 </template>
259
260 <script>
261 // import { getDdicByMC } from "@api/common";
262 // import { insertQlrDlrFr, getQlrInfoByGlbsm, updateQlrDlrFr, deleteQlrDlrFrByQlrbsm, updateGyGyQlrQk, getQlrByGlbsmAndType } from "@api/qlr";
263
264 export default {
265 props: {
266 qszt: {
267 type: String,
268 default: "0",
269 },
270 title: {
271 type: String,
272 default: "",
273 },
274 topHeight: {
275 type: String,
276 default: "15vh",
277 },
278 bsm: {
279 type: String,
280 default: "",
281 },
282 type: {
283 type: String,
284 default: "",
285 },
286 lq: {
287 type: String,
288 default: "",
289 }
290 },
291 data () {
292 return {
293 update: false,
294 gyfs: this.$store.state.gyfsList[0].bsm,
295 tableData: [],
296 gyfsList: [],
297 //表格选中项
298 multipleSelection: [],
299 dialogVisible: false,
300 formData: {
301 addQjDlrFrRequest: [],
302 dlrList: [
303 {
304 dh: "",
305 dlrfrmc: "",
306 qlrbsm: "",
307 zjh: "",
308 zjzlbsm: "",
309 },
310 ],
311 fr: {
312 dh: "",
313 dlrfrmc: "",
314 qlrbsm: "",
315 zjh: "",
316 zjzlbsm: "",
317 },
318 bz: "",
319 dh: "",
320 dz: "",
321 dzyj: "",
322 fczh: "",
323 fzjg: "",
324 gjbsm: "PSHGSBDCQJDC000000000000DC350010", //默认中国
325 glbsm: "",
326 gyfsbsm: "",
327 gyqk: "",
328 gzdw: "",
329 hjszssbsm: "",
330 isdel: 0,
331 qlbl: "",
332 qlrlxbsm: "",
333 qlrmc: "",
334 sshy: "",
335 sxh: 0,
336 tdzh: "",
337 xbbsm: "",
338 yb: "",
339 zjh: "",
340 zjzlbsm: "",
341 lqqlrtype: ""
342 },
343 glbsm: '',
344 rules: [],
345 };
346 },
347 methods: {
348 inputBlur (e) {
349 if (e.target.value != '') {
350 e.target.style.border = ""
351 } else {
352 e.target.style.border = "1px solid red";
353 e.target.style.boxSizing = 'border-box';
354 }
355 },
356
357 //新增行数据
358 addRow () {
359
360 console.log(this.gyfs, '共有方式')
361
362 this.update = false;
363 let flag = false;
364 for (let i = 0; i < this.$store.state.gyfsList.length; i++) {
365 let item = this.$store.state.gyfsList[i];
366 if (item.mc === "单独所有" && item.bsm === this.gyfs) {
367 flag = true;
368 }
369 }
370 if (flag) {
371 if (this.tableData.length > 0) {
372 this.$message({
373 message: "当前方式不可再新增权利人",
374 type: "warning",
375 });
376 } else {
377 this.formData.gyfsbsm = this.gyfs;
378 this.dialogVisible = true;
379 }
380 } else {
381 this.formData.gyfsbsm = this.gyfs;
382 this.dialogVisible = true;
383 }
384 },
385 //确认权利人信息按钮;可以进行新增;可以进行更新;
386 addNewQlrInfo () {
387
388 this.rules = [
389 {
390 data: this.formData.qlrmc,
391 name: '权利人名称',
392 dom: this.$refs.qlrmc,
393 rule: /^\s*$/g, //非空
394 },
395 {
396 data: this.formData.qlrlxbsm,
397 name: '权利人类型',
398 dom: this.$refs.qlrlxbsm,
399 rule: /^\s*$/g, //非空
400 },
401 {
402 data: this.formData.zjzlbsm,
403 name: '证件类型',
404 dom: this.$refs.zjzlbsm,
405 rule: /^\s*$/g, //非空
406 },
407 {
408 data: this.formData.zjh,
409 name: '证件号',
410 dom: this.$refs.zjh,
411 rule: /^\s*$/g, //非空
412 },
413 {
414 data: this.formData.dh,
415 name: '电话',
416 dom: this.$refs.dh,
417 rule: /^\s*$/g, //非空
418 },
419 {
420 data: this.formData.dz,
421 name: '地址',
422 dom: this.$refs.dz,
423 rule: /^\s*$/g, //非空
424 },
425 ]
426 let flag = true;
427 this.rules.forEach(item => {
428 if (item.rule.test(item.data) || item.data == null) {
429 if (item.dom.$el) {
430 item.dom.$el.style.border = '1px solid red';
431 item.dom.$el.style.boxSizing = 'border-box';
432 } else {
433 item.dom.style.border = '1px solid red';
434 item.dom.style.boxSizing = 'border-box';
435 }
436 flag = false;
437 return false
438 }
439 console.log(this.tableData, '权利人信息')
440 console.log(this.$store.state.gyfsList[0].bsm, '确定之后共有方式')
441 })
442 this.$nextTick(() => {
443 if (flag) {
444 //todo 权利人页面调整
445 this.formData.addQjDlrFrRequest = [];
446 this.formData.glbsm = this.bsm;
447 //将代理人,法人数据合在一起,名称为addQjDlrFrRequest;
448 //法人的type字段类型为0,
449 this.formData.fr.type = 0;
450 this.formData.addQjDlrFrRequest.push(this.formData.fr);
451 for (let k = 0; k < this.formData.dlrList.length; k++) {
452 //代理人的type字段类型为1,
453 this.formData.dlrList[k].type = 1;
454 this.formData.addQjDlrFrRequest.push(this.formData.dlrList[k]);
455 }
456 //林权权利人类型判断
457 this.formData.lqqlrtype = this.lq;
458 //如果是从更新按钮点击确定的则进行更新操作,如果不是,则进行添加操作
459 if (this.update) {
460 console.log(this.formData)
461 updateQlrDlrFr(this.formData).then((res) => {
462 if (res.code === 200) {
463 this.dialogVisible = false;
464 this.$message.success("修改完成!");
465 this.getQlrInfo(this.bsm);
466 this.update = false;
467 }
468 })
469 } else {
470 insertQlrDlrFr(this.formData).then((res) => {
471 if (res.code === 200) {
472 this.dialogVisible = false;
473 this.tableData.push(this.formData);
474 this.getQlrInfo(this.bsm);
475 Object.assign(this.$data, this.$options.data())
476
477 }
478 })
479 }
480 }
481 })
482
483
484 },
485 //修改行数据
486 changeRow () {
487 if (this.multipleSelection.length === 1) {
488 this.dialogVisible = true;
489 this.update = true;
490 this.formData = this.multipleSelection[0];
491 if (this.multipleSelection[0].frList.length > 0) {
492 this.formData.fr = this.multipleSelection[0].frList[0];
493 }
494 } else {
495 this.$message({
496 message: "请选择一条信息后继续操作",
497 type: "warning",
498 });
499 }
500 },
501
502 updateGyfs (val) {
503 console.log(val, this.type)
504 updateGyGyQlrQk(this.bsm, this.type, val).then((res) => {
505 if (res.code === 200) {
506 console.log("修改完成!")
507 //todo 修改该建筑物的所有权利人的相关共有方式
508 }
509 })
510 },
511
512 //父组件改变子组件的共有方式
513 changeGyfs (val) {
514 this.gyfs = val;
515 },
516
517 //行双击事件
518 rowDbclick (row) {
519 if (+this.qszt == 0) {
520 this.dialogVisible = true;
521 this.update = true;
522 this.formData = row;
523 if (row.frList.length > 0) {
524 this.formData.fr = row.frList[0];
525 }
526 }
527 },
528
529 // inputBlur(e){
530 // if(e.target.value!=''){
531 // console.log(e.target.value)
532 // console.log(!(/^1(3|4|5|6|7|8|9)d{9}$/.test(e.target.value)))
533 // if(!(/^1(3|4|5|6|7|8|9)d{9}$/.test(e.target.value))){
534 // e.target.style.border="1px solid red";
535 // e.target.style.boxSizing = 'border-box';
536 // }else {
537 // e.target.style.border=""
538 // }
539 // }else{
540 // e.target.style.border="1px solid red";
541 // e.target.style.boxSizing = 'border-box';
542 // }
543 // },
544
545 //删除行数据
546 delRow () {
547 if (this.multipleSelection.length > 0) {
548 let qlrbsms = [];
549 for (let i = 0; i < this.multipleSelection.length; i++) {
550 qlrbsms.push(this.multipleSelection[i].qlrbsm)
551 }
552 console.log(qlrbsms)
553 deleteQlrDlrFrByQlrbsm(qlrbsms).then((res) => {
554 if (res.code === 200) {
555 this.$message.success("删除完成!")
556 this.getQlrInfo(this.bsm);
557 }
558 })
559 } else {
560 this.$message({
561 message: "请至少选择一条信息后继续操作",
562 type: "warning",
563 });
564 }
565 },
566 //选中表格某一项
567 handleSelectionChange (val) {
568 this.multipleSelection = val;
569 },
570
571 //供父组件调用来获取共有方式
572 getQlgyfsData () {
573 return this.gyfs;
574 },
575 //供父组件调用来获取权利人表格数据
576 getQlrxxData () {
577 return this.tableData;
578 },
579 //增删代理人
580 handleClick (obj, ind, type) {
581 if (type === "add") {
582 this.formData.dlrList.push({
583 id: Math.random(),
584 dh: "",
585 dlrfrmc: "",
586 qlrbsm: "",
587 zjh: "",
588 zjzlbsm: "",
589 });
590 } else {
591 this.formData.dlrList.forEach((item, index) => {
592 if (index == ind && this.formData.dlrList.length > 1) {
593 this.formData.dlrList.splice(ind, 1);
594 }
595 });
596 }
597 },
598 getQlrInfo (bsm) {
599 if (this.lq == "") {
600 getQlrInfoByGlbsm(bsm).then((res) => {
601 if (res.code) {
602 if (res.result != null) {
603 this.tableData = res.result;
604 if (this.tableData.length === 0) {
605 this.gyfs = this.$store.state.gyfsList[0].bsm;
606 } else {
607 this.gyfs = res.result[0].gyfsbsm;
608 }
609 }
610 }
611 })
612 } else {
613 let params = {
614 bsm: bsm,
615 type: this.lq
616 }
617 getQlrByGlbsmAndType(params).then((res) => {
618 if (res.code) {
619 if (res.result != null) {
620 this.tableData = res.result;
621 if (this.tableData.length === 0) {
622 this.gyfs = this.$store.state.gyfsList[0].bsm;
623 } else {
624 this.gyfs = res.result[0].gyfsbsm;
625 }
626 }
627 }
628 })
629 }
630 }
631 },
632 created () {
633 this.gyfsList = this.$store.state.gyfsList;
634 },
635 mounted () {
636 this.getQlrInfo(this.bsm);
637 },
638 watch: {
639 tableData: {
640 handler: function (v) {
641 this.gyfsList[0].disabled = v.length > 1;
642 },
643 deep: true
644 },
645 dialogVisible (n) {
646 if (n === false) {
647 this.formData = {
648 addQjDlrFrRequest: [],
649 dlrList: [
650 {
651 dh: "",
652 dlrfrmc: "",
653 qlrbsm: "",
654 zjh: "",
655 zjzlbsm: "",
656 },
657 ],
658 fr: {
659 dh: "",
660 dlrfrmc: "",
661 qlrbsm: "",
662 zjh: "",
663 zjzlbsm: "",
664 },
665 bz: "",
666 dh: "",
667 dz: "",
668 dzyj: "",
669 fczh: "",
670 fzjg: "",
671 gjbsm: "PSHGSBDCQJDC000000000000DC350010", //默认中国
672 glbsm: "",
673 gyfsbsm: "",
674 gyqk: "",
675 gzdw: "",
676 hjszssbsm: "",
677 isdel: 0,
678 qlbl: "",
679 qlrlxbsm: "",
680 qlrmc: "",
681 sshy: "",
682 sxh: 0,
683 tdzh: "",
684 xbbsm: "",
685 yb: "",
686 zjh: "",
687 zjzlbsm: "",
688 }
689 }
690 },
691
692 "formData.qlrlxbsm": function (val) {
693 if (val != '') {
694 this.$refs.qlrlxbsm.$el.style.border = '';
695 }
696 },
697 }
698 };
699 </script>
700 <style lang="scss">
701 .temp {
702 width: 100%;
703
704 table {
705 border-bottom: 0;
706 background-color: #fff;
707 font-size: 14px;
708 width: 100%;
709 table-layout: fixed;
710
711 .qlrBtn {
712 border: 0;
713 font-size: 14px;
714 }
715
716 .qlrBtn:hover {
717 background-color: none !important;
718 }
719
720 .iconfont {
721 font-size: 14px !important;
722 }
723
724 .span {
725 color: #409eff;
726 margin-right: 10px;
727 cursor: pointer;
728 }
729
730 .noEdit {
731 color: #606266;
732 margin-right: 10px;
733 cursor: not-allowed;
734 }
735
736 .el-radio {
737 margin-right: 20px !important;
738 }
739
740 td {
741 text-align: center;
742 padding: 8px 0;
743 }
744 }
745
746 .table-title {
747 font-weight: 700;
748 font-size: 15px;
749 }
750
751 .el-table th {
752 background-color: #fff !important;
753 }
754
755 el-table td,
756 .el-table th.is-leaf,
757 .el-table--border,
758 .el-table--group {
759 border-color: black;
760 }
761
762 .el-table--border::after,
763 .el-table--group::after,
764 .el-table::before {
765 background-color: rgba(0, 0, 0, 0);
766 }
767
768 .el-table--border td,
769 .el-table--border th,
770 .el-table__body-wrapper .el-table--border.is-scrolling-left~.el-table__fixed {
771 border-right: 1px solid#E6E6E6;
772 }
773
774 .el-table td,
775 .el-table th {
776 padding: 12px 0;
777 color: #333 !important;
778 font-weight: normal;
779 }
780
781 .el-table td,
782 .el-table th.is-leaf {
783 border-bottom: 1px solid#E6E6E6;
784 border-color: #E6E6E6 !important;
785 }
786
787 .qlrTable {
788 border-color: #E6E6E6 !important;
789 border-bottom: 0;
790 border-right: 0;
791 position: relative;
792 top: -1px;
793
794 .el-input__inner {
795 height: 20px;
796 margin: 0;
797 line-height: 20px;
798 outline: none;
799 border: none;
800 color: #606764;
801 overflow: visible;
802 cursor: text;
803 text-align: center;
804 }
805 }
806 }
807
808 .insetDialog {
809 .qlrForm {
810 height: 500px;
811 overflow-y: scroll;
812 }
813
814 .zdjbxxTable {
815 margin: 10px 0;
816 background-color: #fff;
817 font-size: 14px;
818 width: 100%;
819 border-bottom: 1px solid #000;
820
821 .btnCol,
822 .minusBtnCol {
823 position: relative;
824 padding-right: 0;
825
826 span {
827 display: inline-block;
828 width: 100%;
829 height: 100%;
830 position: relative;
831 box-sizing: border-box;
832 padding-right: 10px;
833 padding-top: 20px;
834 }
835
836 .line {
837 width: 100%;
838 height: 2px;
839 background: #fff;
840 }
841
842 i {
843 color: #66b1ff;
844 font-size: 30px;
845 cursor: pointer;
846 z-index: 1;
847 }
848 }
849
850 .minusBtnCol {
851 i {
852 color: #FA6400;
853 }
854 }
855
856 th {
857 height: 36px;
858 line-height: 36px;
859 }
860
861 td {
862 text-align: right;
863 height: 36px;
864 }
865
866 /deep/.el-input__inner {
867 margin: 0;
868 height: 36px;
869 outline: none;
870 border: none;
871 color: #606764;
872 overflow: visible;
873 text-align: left;
874 cursor: text;
875 }
876
877 .percent68 {
878 width: 68% !important;
879 float: left;
880 position: relative;
881 top: 7px;
882 }
883
884 .percent30 {
885 width: 30% !important;
886 float: left;
887 }
888
889 .el-input__icon {
890 line-height: 37px;
891 }
892
893 .el-select {
894 width: 100%;
895 }
896 }
897
898 .dialog-footer {
899 width: 160px;
900 margin: 20px auto 0;
901 }
902 }
903 </style>
1 <template>
2 <div class="temp">
3 <div class="qlxzAdd fl">
4 <span>权利性质</span>
5 <i class="iconfont iconicon-test2" v-if="formData.qszt == '0'" @click="handleClick(0, 'add')"></i>
6 <i class="iconfont iconicon-test2" v-if="formData.qszt != '0'" style="cursor: not-allowed;"></i>
7 </div>
8 <el-row class="qlxzModule fl" v-for="(items, index) in countList" :key="items.id">
9 <template v-for="(childItem, childIndex) in items.list">
10 <el-col :span="1" class="btnCol " :key="childIndex + '1'" :class="childIndex > 0 ? 'childYT noTopBorder' : ''">
11 <i v-show="childIndex == 0 && formData.qszt == '0'"
12 :style="{ 'margin-top': (items.list.length - 1) * 57 - 18 + 'px' }" class="iconfont icon- qlxzMinus"
13 @click="handleClick(index, 'minus')"></i>
14 <i v-show="childIndex == 0 && formData.qszt != '0'"
15 :style="{ 'margin-top': (items.list.length - 1) * 57 - 18 + 'px' }" class="iconfont icon- qlxzMinus"
16 style="cursor: not-allowed;"></i>
17 <div :class="items.hasNotBorder ? 'itemShow whiteItem' : 'whiteItem'" v-if="items.isInside"></div>
18 </el-col>
19 <el-col :span="2" class="btnCol tdytAdd" :key="childIndex + '17'"
20 :class="childIndex > 0 ? 'childYT noTopBorder' : ''">
21 <template>
22 <span v-show="childIndex == 0"
23 :style="{ 'margin-top': (items.list.length - 1) * 57 - 40 + 'px' }">土地用途</span>
24 <i class="iconfont iconicon-test1" v-show="childIndex == 0 && formData.qszt == '0'"
25 :style="{ 'margin-top': (items.list.length - 1) * 57 + 'px' }"
26 @click="handleInClick(index, childIndex, 'add')"></i>
27 <i class="iconfont iconicon-test1" v-show="childIndex == 0 && formData.qszt != '0'"
28 :style="{ 'margin-top': (items.list.length - 1) * 57 + 'px' }" style="cursor: not-allowed;"></i>
29 </template>
30 </el-col>
31 <el-col :span="1" class="btnCol tdytMinus pr10" :key="childIndex + '18'"
32 :class="childIndex > 0 ? 'childYT' : ''">
33 <i class="iconfont iconicon-test" v-if="formData.qszt == '0'"
34 @click="handleInClick(index, childIndex, 'minus')"></i>
35 <i class="iconfont iconicon-test" v-if="formData.qszt != '0'" style="cursor: not-allowed;"></i>
36 </el-col>
37 <template v-if="hasSyqx">
38 <el-col :span="3" :key="childIndex + '7'" :class="childIndex > 0 ? 'childYT' : ''">
39 <ul>
40 <li class="pr10"><i class="requisite">*</i>批准用途</li>
41 <li class="pr10"><i class="requisite">*</i>实际用途</li>
42 <li class="pr10"><i class="requisite">*</i>土地使用起始时间</li>
43 </ul>
44 </el-col>
45 <el-col :span="4" :key="childIndex + '6'" :class="childIndex > 0 ? 'childYT' : ''">
46 <ul>
47 <li>
48 <el-select-tree class="formSelect percent30" v-if="show" :default-expand-all="defaultExpandAll"
49 ref="pzytdm" :multiple="multiple" :placeholder="placeholder" :disabled="formData.qszt != '0'"
50 :data="$store.state.tdytList" :props="treeProps" :check-strictly="checkStrictly"
51 :clearable="clearable" v-model="childItem.pzytdm"></el-select-tree>
52 </li>
53 <li>
54 <el-select-tree class="formSelect percent30" v-if="show" :default-expand-all="defaultExpandAll"
55 ref="sjytdm" :multiple="multiple" :placeholder="placeholder" :disabled="formData.qszt != '0'"
56 :data="$store.state.tdytList" :props="treeProps" :check-strictly="checkStrictly"
57 :clearable="clearable" v-model="childItem.sjytdm"></el-select-tree>
58 </li>
59 <li>
60 <el-date-picker :disabled="formData.qszt != '0'" v-model="childItem.tdsyqssj" type="date" ref="tdsyqssj"
61 :picker-options="childItem.pickerStart" value-format="yyyy-MM-dd" placeholder="选择日期"
62 @blur="inputBlur($event, true)" @input="startTime(index, childIndex)">
63 </el-date-picker>
64 </li>
65 </ul>
66 </el-col>
67 <el-col :span="3" :key="childIndex + '5'" :class="childIndex > 0 ? 'childYT' : ''">
68 <ul>
69 <li class="pr10">地类编码</li>
70 <li class="pr10">地类编码</li>
71 <li class="pr10"><i class="requisite">*</i>年限</li>
72 </ul>
73 </el-col>
74 <el-col :span="3" :key="childIndex + '4'" :class="childIndex > 0 ? 'childYT' : ''">
75 <ul>
76 <li>
77 <input type="text" style="top: -1px;" :disabled="formData.qszt != '0'" v-model="childItem.pzytdm"
78 class="formInput" />
79 </li>
80 <li>
81 <input type="text" :disabled="formData.qszt != '0'" v-model="childItem.sjytdm" class="formInput" />
82 </li>
83 <li>
84 <input type="text" ref="syqx" @blur="inputBlur($event, false)" maxlength="3"
85 onkeyup="value=value.replace(/[^\d]/g,'')"
86 @input="sumTime(index, childIndex, childItem.syqx, childItem.syqx)" :disabled="formData.qszt != '0'"
87 v-model="childItem.syqx" class="formInput" />
88 </li>
89 </ul>
90 </el-col>
91 <el-col class="pr10" :span="3" :key="childIndex + '2'" :class="childIndex > 0 ? 'childYT' : ''">
92 <ul>
93 <li>等级</li>
94 <li>等级</li>
95 <li><i class="requisite">*</i>土地使用结束时间</li>
96 </ul>
97 </el-col>
98 <el-col :span="4" :key="childIndex + '3'" class="noRightBorder" :class="childIndex > 0 ? 'childYT ' : ''">
99 <ul>
100 <li>
101 <el-select :disabled="formData.qszt != '0'" class="formSelect percent30" v-model="childItem.pzdjbsm">
102 <el-option v-for="item in $store.state.tddjList" :key="item.bsm" :label="item.mc" :value="item.bsm">
103 </el-option>
104 </el-select>
105 </li>
106 <li>
107 <el-select :disabled="formData.qszt != '0'" class="formSelect percent30" v-model="childItem.sjdjbsm">
108 <el-option v-for="item in $store.state.tddjList" :key="item.bsm" :label="item.mc" :value="item.bsm">
109 </el-option>
110 </el-select>
111 </li>
112 <li>
113 <el-date-picker :disabled="formData.qszt != '0'" v-model="childItem.tdsyjssj" type="date" ref="tdsyjssj"
114 @blur="inputBlur($event, true)" :picker-options="childItem.pickerEnd"
115 @input="endTime(index, childIndex, $event)" value-format="yyyy-MM-dd" placeholder="选择日期">
116 </el-date-picker>
117 </li>
118 </ul>
119 </el-col>
120 </template>
121 <template v-if="!hasSyqx">
122 <el-col :span="5" :key="childIndex + '7'" :class="childIndex > 0 ? 'childYT' : ''">
123 <ul>
124 <li class="pr10"><i class="requisite">*</i>批准用途</li>
125 <li class="pr10"><i class="requisite">*</i>实际用途</li>
126 <li class="pr10"><i class="requisite">*</i>土地使用起始时间</li>
127 </ul>
128 </el-col>
129 <el-col :span="5" :key="childIndex + '6'" :class="childIndex > 0 ? 'childYT' : ''">
130 <ul>
131 <li>
132 <el-select-tree v-if="show" class="formSelect percent30" :default-expand-all="defaultExpandAll"
133 ref="pzytdm" :multiple="multiple" :placeholder="placeholder" :disabled="formData.qszt != '0'"
134 :data="$store.state.tdytList" :props="treeProps" :check-strictly="checkStrictly"
135 :clearable="clearable" v-model="childItem.pzytdm"></el-select-tree>
136 </li>
137 <li>
138 <el-select-tree v-if="show" class="formSelect percent30" :default-expand-all="defaultExpandAll"
139 ref="sjytdm" :multiple="multiple" :placeholder="placeholder" :disabled="formData.qszt != '0'"
140 :data="$store.state.tdytList" :props="treeProps" :check-strictly="checkStrictly"
141 :clearable="clearable" v-model="childItem.sjytdm"></el-select-tree>
142 </li>
143 <li>
144 <el-date-picker v-model="childItem.tdsyqssj" ref="tdsyqssj" :disabled="formData.qszt != '0'"
145 :picker-options="childItem.pickerStart" type="date" value-format="yyyy-MM-dd" placeholder="选择日期"
146 @blur="inputBlur($event, true)" @input="startTime(index, childIndex)">
147 </el-date-picker>
148 </li>
149 </ul>
150 </el-col>
151 <el-col :span="5" :key="childIndex + '5'" :class="childIndex > 0 ? 'childYT' : ''">
152 <ul>
153 <li class="pr10">地类编码</li>
154 <li class="pr10">地类编码</li>
155 <li class="pr10"><i class="requisite">*</i>土地使用结束时间</li>
156 </ul>
157 </el-col>
158 <el-col :span="5" :key="childIndex + '4'" :class="childIndex > 0 ? 'childYT' : ''">
159 <ul>
160 <li>
161 <input type="text" style="top: -1px;" :disabled="formData.qszt != '0'" v-model="childItem.pzytdm"
162 class="formInput" />
163 </li>
164 <li>
165 <input type="text" :disabled="formData.qszt != '0'" v-model="childItem.sjytdm" class="formInput" />
166 </li>
167 <li>
168 <el-date-picker v-model="childItem.tdsyjssj" :disabled="formData.qszt != '0'" ref="tdsyjssj" type="date"
169 value-format="yyyy-MM-dd" :picker-options="childItem.pickerEnd" placeholder="选择日期"
170 @blur="inputBlur($event, true)" @input="endTime(index, childIndex)">
171 </el-date-picker>
172 </li>
173 </ul>
174 </el-col>
175 </template>
176 </template>
177
178 <div class="title">
179 <el-select-tree v-if="show" class="formSelect" :disabled="formData.qszt != '0'"
180 :default-expand-all="defaultExpandAll" :multiple="multiple" :placeholder="placeholder"
181 :data="$store.state.qlxzList" :props="treeProps" :check-strictly="checkStrictly" :clearable="clearable"
182 ref="qlxzdm" v-model="items.qlxzdm"></el-select-tree>
183 </div>
184 </el-row>
185 </div>
186 </template>
187
188 <script>
189 // import { getDdicByMC } from "@api/common";
190 export default {
191 props: {
192 formData: {
193 type: Object,
194 default: () => {
195 return {};
196 },
197 },
198 hasSyqx: {
199 type: Boolean,
200 default: false
201 }
202 },
203 data () {
204 return {
205 //树型结构
206 show: true,
207 clearable: true,
208 defaultExpandAll: true,
209 multiple: false,
210 placeholder: "请选择",
211 disabled: false,
212 checkStrictly: true,
213 treeProps: {
214 value: "dm",
215 children: "children",
216 label: "mc",
217 },
218
219 countList: [
220 {
221 id: Math.random(),
222 isInside: false,
223 hasNotBorder: false,
224 bsm: "", //权利性质标识码
225 glbsm: "", //宗地BSM、自然幢BSM、户BSM、多幢BSM、宗海BSM
226 qlxzdm: "",
227 qlxzmc: "",
228 zhqlxzlx: "", //除宗海数据外,默认都是空;0:用海类型权利性质;2:海岛用途权利性质
229 list: [
230 {
231 pzdjbsm: "",
232 pzdjmc: "",
233 pzytdm: "",
234 pzytmc: "",
235 pzytmj: 0,
236 qlxzbsm: "",
237 sjdjbsm: "",
238 sjdjmc: "",
239 sjytdm: "",
240 sjytmc: "",
241 sjytmj: 0,
242 syqx: "",
243 tdsyjssj: "",
244 pickerStart: {},
245 pickerEnd: {},
246 tdsyqssj: "",
247 tdzh: "",
248 },
249 ],
250 },
251 ],
252 outNum: 0,
253 rulesResult: true,//权利性质表单校验结果
254 };
255 },
256 created () { },
257 mounted () {
258 },
259 methods: {
260 startTime (index, childIndex) {
261 let startTime = this.countList[index].list[childIndex].tdsyqssj;
262 let endTime = this.countList[index].list[childIndex].tdsyjssj;
263 this.countList[index].list[childIndex].pickerEnd = {
264 disabledDate: (time) => {
265 if (Object.keys(startTime).length > 0) {
266 return new Date(startTime).getTime() > time.getTime();
267 } else {
268 return time.getTime() < Date.now();
269 }
270 }
271 }
272 if (Object.keys(startTime).length > 0 && Object.keys(endTime).length > 0) {
273 let startYear = new Date(startTime).getFullYear();
274 let endYear = new Date(endTime).getFullYear();
275 //年限暂时不算
276 // this.countList[index].list[childIndex].syqx=endYear-startYear;
277 }
278 },
279 sumTime (index, childIndex, syqx, e) {
280 this.$refs.syqx.forEach((item, index) => {
281 if (item.value == syqx) {
282 this.$refs.tdsyjssj[index].$el.style.border = ""
283 }
284 })
285 let startTime = this.countList[index].list[childIndex].tdsyqssj;
286 this.countList[index].list[childIndex].tdsyjssj = Number(startTime.substring(0, 4)) + Number(syqx) + startTime.slice(4, 10);
287 },
288 endTime (index, childIndex, e) {
289 let startTime = this.countList[index].list[childIndex].tdsyqssj;
290 let endTime = this.countList[index].list[childIndex].tdsyjssj;
291 this.countList[index].list[childIndex].pickerStart = {
292 disabledDate: (time) => {
293 if (Object.keys(endTime).length > 0) {
294 return new Date(endTime).getTime() < time.getTime();
295 } else {
296 return time.getTime() > Date.now();
297 }
298 }
299 }
300 if (Object.keys(startTime).length > 0 && Object.keys(endTime).length > 0) {
301 let startYear = new Date(startTime).getFullYear();
302 let endYear = new Date(endTime).getFullYear();
303 // this.countList[index].list[childIndex].syqx=endYear-startYear;
304 }
305 },
306 //外层操作
307 handleClick (ind, type) {
308 let outsideObj = {
309 id: Math.random(),
310 isInside: false,
311 hasNotBorder: false,
312 bsm: "", //权利性质标识码
313 glbsm: "", //宗地BSM、自然幢BSM、户BSM、多幢BSM、宗海BSM
314 qlxzdm: "",
315 qlxzmc: "",
316 zhqlxzlx: "", //除宗海数据外,默认都是空;0:用海类型权利性质;2:海岛用途权利性质
317 list: [
318 {
319 pzdjbsm: "",
320 pzdjmc: "",
321 pzytdm: "",
322 pzytmc: "",
323 pzytmj: 0,
324 qlxzbsm: "",
325 sjdjbsm: "",
326 sjdjmc: "",
327 sjytdm: "",
328 pickerStart: {},
329 pickerEnd: {},
330 sjytmc: "",
331 sjytmj: 0,
332 syqx: "",
333 tdsyjssj: "",
334 tdsyqssj: "",
335 tdzh: "",
336 },
337 ],
338 };
339 if (type === "add") {
340 this.countList.push(outsideObj);
341 this.outNum++;
342 } else {
343 this.countList.forEach((item, index) => {
344 if (index == ind && this.countList.length > 1) {
345 this.countList.splice(index, 1);
346 }
347 });
348 this.outNum--;
349 }
350 },
351 reset () {
352 this.countList = [
353 {
354 id: Math.random(),
355 isInside: false,
356 hasNotBorder: false,
357 bsm: "", //权利性质标识码
358 glbsm: "", //宗地BSM、自然幢BSM、户BSM、多幢BSM、宗海BSM
359 qlxzdm: "",
360 qlxzmc: "",
361 zhqlxzlx: "", //除宗海数据外,默认都是空;0:用海类型权利性质;2:海岛用途权利性质
362 list: [
363 {
364 pzdjbsm: "",
365 pzdjmc: "",
366 pzytdm: "",
367 pzytmc: "",
368 pzytmj: 0,
369 qlxzbsm: "",
370 sjdjbsm: "",
371 sjdjmc: "",
372 sjytdm: "",
373 sjytmc: "",
374 sjytmj: 0,
375 syqx: "",
376 tdsyjssj: "",
377 pickerStart: {},
378 pickerEnd: {},
379 tdsyqssj: "",
380 tdzh: "",
381 },
382 ],
383 },
384 ];
385 },
386 //内层操作
387 handleInClick (index, childIndex, type) {
388 let insideObj = {
389 pzdjbsm: "",
390 pzdjmc: "",
391 pzytdm: "",
392 pzytmc: "",
393 pzytmj: 0,
394 qlxzbsm: "",
395 sjdjbsm: "",
396 sjdjmc: "",
397 sjytdm: "",
398 sjytmc: "",
399 sjytmj: 0,
400 pickerStart: {},
401 pickerEnd: {},
402 syqx: "",
403 tdsyjssj: "",
404 tdsyqssj: "",
405 tdzh: "",
406 };
407 if (type === "add") {
408 this.countList[index].list.splice(childIndex + 1, 0, insideObj);
409 } else {
410 this.countList[index].list.forEach((item, childInd) => {
411 if (childIndex == childInd && this.countList[index].list.length > 1) {
412 this.countList[index].list.splice(childIndex, 1);
413 }
414 });
415 }
416 this.hasBorderOrNot();
417 },
418 //判断是否显示边框
419 hasBorderOrNot () {
420 this.countList.forEach((item, index) => {
421 if (index == this.countList.length - 1) {
422 item.hasNotBorder = true;
423 } else {
424 item.hasNotBorder =
425 item.isInside && !this.countList[index + 1].isInside ? true : false;
426 }
427 });
428 },
429 getQlxzDataList () {
430 return this.countList;
431 },
432 getRules () {
433 let rules = [];
434 let temp = 0;
435 this.countList.forEach((item, index) => {
436 rules.push({
437 data: this.countList[index].qlxzdm,
438 name: '权利性质',
439 dom: this.$refs.qlxzdm[index],
440 rule: /^\s*$/g, //非空
441 })
442 item.list.forEach((j, ind) => {
443 rules.push(
444 {
445 data: item.list[ind].tdsyqssj,
446 name: '土地使用起始时间',
447 dom: this.$refs.tdsyqssj[temp + ind],
448 // val:this.$refs.tdsyqssj[temp+ind].value,
449 rule: /^\s*$/g, //非空
450 },
451 {
452 data: item.list[ind].tdsyjssj,
453 name: '土地使用结束时间',
454 dom: this.$refs.tdsyjssj[temp + ind],
455 // val:this.$refs.tdsyjssj[temp+ind].value,
456 rule: /^\s*$/g, //非空
457 },
458 {
459 data: item.list[ind].pzytdm,
460 name: '批准用途',
461 dom: this.$refs.pzytdm[temp + ind],
462 // val:this.$refs.tdsyjssj[temp+ind].value,
463 rule: /^\s*$/g, //非空
464 },
465 {
466 data: item.list[ind].sjytdm,
467 name: '实际用途',
468 dom: this.$refs.sjytdm[temp + ind],
469 // val:this.$refs.tdsyjssj[temp+ind].value,
470 rule: /^\s*$/g, //非空
471 },
472 )
473 if (this.hasSyqx) {
474 rules.push(
475 {
476 data: item.list[ind].syqx,
477 name: '使用期限',
478 dom: this.$refs.syqx[temp + ind],
479 // val:this.$refs.syqx[temp+ind].value,
480 rule: /^\s*$/g, //非空
481 }
482 )
483 }
484 if (ind == item.list.length - 1) {
485 temp += item.list.length;
486 }
487 })
488 })
489 this.rulesResult = true;
490 rules.forEach(item => {
491 if (item.rule.test(item.data) || item.data == null) {
492 if (item.dom.$el) {
493 item.dom.$el.style.border = '1px solid red';
494 item.dom.$el.style.boxSizing = 'border-box';
495 } else {
496 item.dom.style.border = '1px solid red';
497 item.dom.style.boxSizing = 'border-box';
498 }
499 // this.$message({
500 // // message: item.name+'不能为空',
501 // message: '不能为空',
502 // type: "warning",
503 // });
504 this.rulesResult = false;
505 return false
506 }
507 })
508 // console.log(rules,'rules');
509 },
510 getRulesResult () {
511 return this.rulesResult
512 },
513 inputBlur (e, flag) {
514 if (flag) {
515 if (e.value != '') {
516 e.$el.style.border = ""
517 } else {
518 e.$el.style.border = "1px solid red"
519 e.$el.style.boxSizing = 'border-box';
520 }
521 } else {
522 if (e.target.value != '') {
523 e.target.style.border = ""
524 } else {
525 e.target.style.border = "1px solid red"
526 e.target.style.boxSizing = 'border-box';
527 }
528 }
529 },
530 //后续考虑在点击加减号时操作校验规则
531 // addRules(){
532 // this.tempQssj.push()
533 // },
534 // minusRules(){
535
536 // },
537 },
538 watch: {
539 countList: {
540 handler: function (newVal, oldVal) {
541 newVal.forEach((i, ind) => {
542 if (i.qlxzdm != '' && i.qlxzdm != null) {
543 console.log(this.$refs.qlxzdm, 'this.$refs.qlxzdm[ind]');
544 i.qlxzmc = this.$refs.qlxzdm[ind].name;
545 this.$refs.qlxzdm[ind].$el.style.border = ""
546 }
547 i.list.forEach((item, index) => {
548 if (item.sjytdm != '' && item.sjytdm != null) {
549 this.$refs.sjytdm[ind].$el.style.border = ""
550 }
551 if (item.pzytdm != '' && item.pzytdm != null) {
552 this.$refs.pzytdm[ind].$el.style.border = ""
553 }
554 })
555 })
556 },
557 deep: true
558 },
559 }
560 };
561 </script>
562 <style lang="scss">
563 .temp {
564 width: 100%;
565 height: 100%;
566
567 .iconfont {
568 cursor: pointer;
569 }
570
571 .qlxzAdd {
572 width: 100px;
573 height: 100%;
574 border-right: 1px solid #E6E6E6;
575 position: relative;
576
577 span {
578 font-size: 14px;
579 height: 140px;
580 text-align: center;
581 -webkit-writing-mode: vertical-rl;
582 writing-mode: vertical-rl;
583 position: absolute;
584 top: 50%;
585 margin-top: -70px;
586 left: 30%;
587 }
588
589 i {
590 color: #66b1ff;
591 font-size: 30px;
592 position: absolute;
593 top: 50%;
594 margin-top: -18px;
595 left: 55%;
596 z-index: 1;
597 }
598 }
599
600 .qlxzModule {
601 width: calc(100% - 102px);
602 height: auto;
603 position: relative;
604 border-bottom: 1px solid #E6E6E6;
605
606 .pr10 {
607 padding-right: 10px !important;
608 }
609
610 .el-col {
611 // height: 100%;
612 border-right: 1px solid #E6E6E6;
613 position: relative;
614 text-align: right;
615
616 .qlxz {
617 line-height: 34px;
618 }
619
620 .qlxzMinus {
621 color: #FA6400;
622 font-size: 30px;
623 position: absolute;
624 top: 50%;
625 left: 50%;
626 margin: -18px 0 0 -18px;
627 z-index: 1;
628 }
629
630 ul {
631 margin-top: 34px;
632
633 li {
634 height: 37px;
635 line-height: 37px;
636 text-decoration: none;
637 border-bottom: 1px solid #e6e6e6;
638
639 .el-select {
640 width: 100%;
641 }
642
643 .el-input {
644 width: 100%;
645 }
646
647 input {
648 position: relative;
649 top: -2px;
650 height: 35px;
651 width: calc(100% - 1px) !important;
652 }
653
654 .el-input__inner {
655 height: 34px;
656 }
657 }
658
659 li:last-child {
660 border-bottom: none;
661 }
662 }
663
664 .whiteItem {
665 background-color: #fff;
666 position: absolute;
667 width: 100%;
668 height: 2px;
669 bottom: -1px;
670 left: 0;
671 }
672
673 .itemShow {
674 bottom: 2px;
675 }
676 }
677
678 .childYT {
679 height: 114px;
680 border-top: 1px solid #E6E6E6;
681
682 ul {
683 margin-top: 0;
684
685 li {
686 .el-input__inner {
687 height: 29px;
688 }
689 }
690 }
691
692 .changeBtn {
693 margin-top: -48px;
694 }
695
696 .el-button+.el-button {
697 margin-top: 4px;
698 }
699 }
700
701 .noTopBorder {
702 border-top: 0;
703 }
704
705 .noRightBorder {
706 border-right: 0;
707 }
708
709 .el-col:nth-last-child(2) {
710 border-right: none;
711 }
712
713 .title {
714 width: 95.83333%;
715 height: 34px;
716 line-height: 34px;
717 background-color: #fff;
718 border-bottom: 1px solid #E6E6E6;
719 position: absolute;
720 right: 0;
721 top: 0;
722
723 .formSelect {
724 top: -1px;
725 width: 100%;
726
727 .el-input__inner {
728 height: 32px;
729 }
730 }
731 }
732 }
733
734 .btnCol {
735 position: relative;
736 height: 146px;
737
738 .changeBtn {
739 width: 46px;
740 height: 46px;
741 font-size: 30px;
742 padding: 4px 6px;
743 position: absolute;
744 top: 50%;
745 left: 50%;
746 margin-top: -38px;
747 margin-left: -23px;
748 }
749
750 .el-button+.el-button {
751 margin-left: -23px;
752 margin-top: 16px;
753 }
754 }
755
756 .tdytAdd {
757 width: 100px;
758 }
759
760 .tdytAdd,
761 .tdytMinus {
762 span {
763 font-size: 14px;
764 height: 114px;
765 text-align: center;
766 -webkit-writing-mode: vertical-rl;
767 writing-mode: vertical-rl;
768 position: absolute;
769 top: 50%;
770 left: 30%;
771 }
772
773 i {
774 color: #66b1ff;
775 font-size: 30px;
776 position: absolute;
777 top: 50%;
778 margin-top: 0px;
779 left: 55%;
780 z-index: 1;
781 }
782 }
783
784 .tdytMinus {
785 i {
786 color: #FA6400;
787 left: 50%;
788 margin-left: -18px;
789 }
790 }
791
792 .childYT {
793 i {
794 top: 50%;
795 margin-top: -18px;
796 }
797 }
798
799 .el-row:nth-last-child(1) {
800 border-bottom: none;
801 }
802
803 /deep/.el-select-tree {
804 width: 100%;
805
806 .el-input__inner {
807 height: 34px !important;
808 position: relative;
809 top: -1px;
810 }
811 }
812 }
813 </style>
1 <template>
2 <div class="temp">
3 <el-row class="qlxzModule" v-for="(items, index) in countList" :key="items.id">
4 <template v-for="(childItem, childIndex) in items.list">
5 <el-col :span="2" class="btnCol" :key="childIndex + '1'" :class="childIndex > 0 ? 'childYT noTopBorder' : ''">
6 <el-button v-show="childIndex < 1" type="primary" class="changeBtn addMinus outAdd"
7 @click="handleClick(index, 'add')">+</el-button>
8 <el-button v-show="childIndex < 1" type="primary" class="changeBtn addMinus outMinus"
9 @click="handleClick(index, 'minus')">-</el-button>
10 <div :class="items.hasNotBorder ? 'itemShow whiteItem' : 'whiteItem'" v-if="items.isInside"></div>
11 </el-col>
12 <el-col :span="2" class="btnCol" :key="childIndex + '8'" :class="childIndex > 0 ? 'childYT' : ''">
13 <!-- <template v-if="childIndex>0"> -->
14 <span class="qlxz" v-show="childIndex < 1">权利性质</span><br />
15 <el-button type="primary" class="changeBtn addMinus inAdd" @click="handleInClick(index, childIndex, 'add')">+
16 </el-button>
17 <el-button type="primary" class="changeBtn addMinus inMinus"
18 @click="handleInClick(index, childIndex, 'minus')">-</el-button>
19 <!-- </template> -->
20 </el-col>
21 <el-col :span="5" :key="childIndex + '7'" :class="childIndex > 0 ? 'childYT' : ''">
22 <ul>
23 <li>批准用途</li>
24 <li>实际用途</li>
25 <li>土地使用起始时间<i class="requisite">*</i></li>
26 </ul>
27 </el-col>
28 <el-col :span="5" :key="childIndex + '6'" :class="childIndex > 0 ? 'childYT' : ''">
29 <ul>
30 <li>
31 <el-select-tree v-if="show" :default-expand-all="defaultExpandAll" :multiple="multiple"
32 :placeholder="placeholder" :disabled="disabled" :data="$store.state.tdytList" :props="treeProps"
33 :check-strictly="checkStrictly" :clearable="clearable" v-model="childItem.pzytdm"></el-select-tree>
34 </li>
35 <li>
36 <el-select-tree v-if="show" :default-expand-all="defaultExpandAll" :multiple="multiple"
37 :placeholder="placeholder" :disabled="disabled" :data="$store.state.tdytList" :props="treeProps"
38 :check-strictly="checkStrictly" :clearable="clearable" v-model="childItem.sjytdm"></el-select-tree>
39 </li>
40 <li>
41 <el-date-picker v-model="childItem.tdsyqssj" :picker-options="childItem.pickerStart" type="date"
42 value-format="yyyy-MM-dd" placeholder="选择日期" @input="startTime(index, childIndex)">
43 </el-date-picker>
44 </li>
45 </ul>
46 </el-col>
47 <el-col :span="5" :key="childIndex + '5'" :class="childIndex > 0 ? 'childYT' : ''">
48 <ul>
49 <li>地类编码</li>
50 <li>地类编码</li>
51 <li>土地使用结束时间<i class="requisite">*</i></li>
52 </ul>
53 </el-col>
54 <el-col :span="5" :key="childIndex + '4'" :class="childIndex > 0 ? 'childYT' : ''">
55 <ul>
56 <li>
57 <input type="text" style="top: -1px;" v-model="childItem.pzytdm" class="formInput" />
58 </li>
59 <li>
60 <input type="text" v-model="childItem.sjytdm" class="formInput" />
61 </li>
62 <li>
63 <el-date-picker v-model="childItem.tdsyjssj" type="date" value-format="yyyy-MM-dd"
64 :picker-options="childItem.pickerEnd" placeholder="选择日期" @input="endTime(index, childIndex)">
65 </el-date-picker>
66 </li>
67 </ul>
68 </el-col>
69 </template>
70
71 <div class="title">
72 <el-select class="formSelect" v-model="items.qlxzdm">
73 <el-option v-for="item in $store.state.qlxzList" :key="item.dm" :label="item.mc" :value="item.dm">
74 </el-option>
75 </el-select>
76 </div>
77 </el-row>
78 </div>
79 </template>
80
81 <script>
82 // import { getDdicByMC } from "@api/common";
83 export default {
84 props: {
85 // widtd: {
86 // type: String,
87 default: "70%",
88 ,
89 a () {
90 return {
91 //树型结构
92 how: true,
93 arable: true,
94 aultExpandAll: true,
95 tiple: false,
96 ceholder: "请选择",
97 abled: false,
98 ckStrictly: true,
99 eProps: {
100 lue: "dm",
101 ildren: "children",
102 bel: "mc",
103
104 ntList: [
105
106 id: Math.random(),
107 isInside: false,
108 hasNotBorder: false,
109 bsm: "", //权利性质标识码
110 lbsm: "", //宗地BSM、自然幢BSM、户BSM、多幢BSM、宗海BSM
111 lxzdm: "",
112 zhqlxzlx: "", //除宗海数据外,默认都是空;0:用海类型权利性质;2:海岛用途权利性质
113 list: [
114 {
115 pzdjbsm: "",
116 pzdjmc: "",
117 pzytdm: "",
118 pzytmc: "",
119 pzytmj: 0,
120 qlxzbsm: "",
121 sjdjbsm: "",
122 sjdjmc: "",
123 sjytdm: "",
124 sjytmc: "",
125 jytmj: 0,
126 syqx: "",
127 tdsyjssj: "",
128 tdsyqssj: "",
129 pickerStart: {},
130 pickerEnd: {},
131 tdzh: "",
132 },
133
134
135
136 Num: 0,
137
138
139 ed () { },
140 hods: {
141 外层操作
142 ndleClick (ind, type) {
143 outsideObj = {
144 Math.random(),
145 Inside: false,
146 sNotBorder: false,
147 "", //权利性质标识码
148 bsm: "", //宗地BSM、自然幢BSM、户BSM、多幢BSM、宗海BSM
149 xzdm: "",
150 zhqlxzlx: "", //除宗海数据外,默认都是空;0:用海类型权利性质;2:海岛用途权利性质
151 list: [
152 {
153 pzdjbsm: "",
154 pzdjmc: "",
155 pzytdm: "",
156 pzytmc: "",
157 pzytmj: 0,
158 qlxzbsm: "",
159 sjdjbsm: "",
160 sjdjmc: "",
161 sjytdm: "",
162 sjytmc: "",
163 sjytmj: 0,
164 syqx: "",
165 tdsyjssj: "",
166 tdsyqssj: "",
167 tdzh: "",
168
169
170 };
171 (type === "add") {
172 is.countList.push(outsideObj);
173 is.outNum++;
174 lse {
175 .countList.forEach((item, index) => {
176 f (index == ind && this.countList.length > 1) {
177 this.countList.splice(index, 1);
178 }
179 });
180 this.outNum--;
181
182 Click (index, childIndex, type) {
183 eObj = {
184 ",
185 ,
186 "",
187 "",
188 : 0,
189 m: "",
190 m: "",
191 "",
192 : "",
193 : "",
194 : 0,
195 "",
196 jssj: "",
197 sj: "",
198 : "",
199 e === "add") {
200 ountList[index].list.splice(childIndex + 1, 0, insideObj);
201
202 ountList[index].list.forEach((item, childInd) => {
203 (childIndex == childInd && this.countList[index].list.length > 1) {
204 this.countList[index].list.splice(childIndex, 1);
205 }
206 });
207
208 s.hasBorderOrNot();
209 是否显示边框
210 orderOrNot () {
211 s.countList.forEach((item, index) => {
212 (index == this.countList.length - 1) {
213 m.hasNotBorder = true;
214 {
215 sNotBorder =
216 sInside && !this.countList[index + 1].isInside ? true : false;
217 aList () {
218 this.countList;
219 时间判断
220 tTime (index, childIndex) {
221 tartTime = this.countList[index].list[childIndex].tdsyqssj;
222 endTime = this.countList[index].list[childIndex].tdsyjssj;
223 s.countList[index].list[childIndex].pickerEnd = {
224 bledDate: (time) => {
225 f (Object.keys(startTime).length > 0) {
226 return new Date(startTime).getTime() > time.getTime();
227 lse {
228 rn time.getTime() < Date.now();
229 t.keys(startTime).length > 0 && Object.keys(endTime).length > 0) {
230 ear = new Date(startTime).getFullYear();
231 ear = new Date(endTime).getFullYear();
232 ime (index, childIndex, e) {
233 onsole.log(e, 'eeeeee');
234 let startTime = this.countList[index].list[childIndex].tdsyqssj;
235 let endTime = this.countList[index].list[childIndex].tdsyjssj;
236 this.countList[index].list[childIndex].pickerStart = {
237 disabledDate: (time) => {
238 if (Object.keys(endTime).length > 0) {
239 return new Date(endTime).getTime() < time.getTime();
240 } else {
241 return time.getTime() > Date.now();
242 }
243 }
244 }
245 if (Object.keys(startTime).length > 0 && Object.keys(endTime).length > 0) {
246 let startYear = new Date(startTime).getFullYear();
247 let endYear = new Date(endTime).getFullYear();
248 }
249 },
250 },
251 };
252 </script>
253 <style lang="scss">
254 .temp {
255 width: 100%;
256
257 .qlxzModule {
258 height: auto;
259 position: relative;
260 border-bottom: 1px solid #e6e6e6;
261
262 .el-col {
263 // height: 100%;
264 border-right: 1px solid #E6E6E6;
265 position: relative;
266 text-align: right;
267 padding-right: 10px;
268
269 .qlxz {
270 line-height: 34px;
271 }
272
273 ul {
274 margin-top: 34px;
275
276 li {
277 height: 37px;
278 line-height: 37px;
279 text-decoration: none;
280 border-bottom: 1px solid #e6e6e6;
281
282 .el-select {
283 width: 100%;
284 }
285
286 .el-input {
287 width: 100%;
288 }
289
290 .el-input__inner {
291 height: 34px;
292 }
293
294 input {
295 position: relative;
296 top: -2px;
297 height: 35px;
298 width: calc(100% - 1px) !important;
299 }
300 }
301
302 li:last-child {
303 border-bottom: none;
304 }
305 }
306
307 .whiteItem {
308 background-color: #fff;
309 position: absolute;
310 width: 100%;
311 height: 2px;
312 bottom: -1px;
313 left: 0;
314 }
315
316 .itemShow {
317 bottom: 2px;
318 }
319 }
320
321 .childYT {
322 height: 114px;
323 border-top: 1px solid #E6E6E6;
324
325 ul {
326 margin-top: 0;
327
328 li {
329 .el-input__inner {
330 height: 29px;
331 }
332 }
333 }
334
335 .changeBtn {
336 margin-top: -48px;
337 }
338
339 .el-button+.el-button {
340 margin-top: 4px;
341 }
342 }
343
344 .noTopBorder {
345 border-top: 0;
346 }
347
348 .noRightBorder {
349 border-right: 0;
350 }
351
352 .el-col:nth-last-child(2) {
353 border-right: none;
354 }
355
356 .title {
357 width: 83.33333%;
358 height: 34px;
359 line-height: 34px;
360 background-color: #fff;
361 border-bottom: 1px solid #E6E6E6;
362 position: absolute;
363 right: 0;
364 top: 0;
365
366 .formSelect {
367 top: -1px;
368 width: 100%;
369
370 .el-input__inner {
371 height: 32px;
372 }
373 }
374 }
375 }
376
377 .btnCol {
378 position: relative;
379 height: 146px;
380
381 .changeBtn {
382 width: 46px;
383 height: 46px;
384 font-size: 30px;
385 padding: 4px 6px;
386 position: absolute;
387 top: 50%;
388 left: 50%;
389 margin-top: -38px;
390 margin-left: -23px;
391 }
392
393 .el-button+.el-button {
394 margin-left: -23px;
395 margin-top: 16px;
396 }
397 }
398
399 .el-row:nth-last-child(1) {
400 border-bottom: none;
401 }
402
403 /deep/.el-select-tree {
404 width: 100%;
405
406 .el-input__inner {
407 height: 30px !important;
408 }
409 }
410 }
411 </style>
1 <template>
2 <div class="tree_item_box">
3 <div class="column-start-start linkLine_default" v-for="(item, s_index) in list" :key="s_index" :class="{
4 linkLine_first: (s_index === 0) & (list.length > 1),
5 linkLine_half_top: s_index === 0 && list.length === 1,
6 linkLine_last: s_index === list.length - 1 && s_index !== 0,
7 third_layer: !item.children,
8 second_layer: item.children,
9 curNode: $route.query.bsm && $route.query.bsm == item.bsm,
10 zxxNode: item.qszt,
11 iszd: item.qszt && item.type == 'zd',
12 isdz: item.qszt && item.type == 'dz',
13 iszrz: item.qszt && item.type == 'zrz',
14 isgzw: item.qszt && item.type == 'gzw'
15 }">
16 <div class="row-flex-start basic_banner" @click="itemClick(item)" @dblclick="dbclick(item, item.zdbsm)" :class="{
17 active_color: item.expand,
18 }">
19 <div class="layer_text nowrap" @contextmenu.prevent="openMenu($event, item, list)" :class="{
20 active_color: item.expand
21 }" :ref="($route.query.bsm && $route.query.bsm == item.bsm) ? 'curZxx' : ''" :data-zdbsm="item.zdbsm"
22 :title=item.mc>
23 <i v-show="!islpb && !item.qszt && !item.type" class="iconfont iconguoyou" style="margin-right:6px"></i>
24 <template v-if="islpb && item.type == 'ljz' && item.children.length > 0">
25 <i v-if="!item.expand" class="iconfont iconxiala lpbTree-node"></i>
26 <i v-if="item.expand" class="iconfont iconxialazhankai lpbTree-node"></i>
27 </template>
28 <!-- <i v-show="islpb && item.expand && item.children.length > 0" class="iconfont iconxiala" style="margin-right:6px"></i>
29 <i v-show="islpb && !item.expand && item.children.length > 0" class="iconfont iconxialazhankai" style="margin-right:6px"></i> -->
30 <span class="qsztImg" v-if="item.bblx == 1 || (item.bhqkbsm != '' && item.bhqkbsm != null)">
31 <!-- <span class="qsztFont" style="color: #9e9b9b">变</span> -->
32 <i
33 :class="$route.query.bsm && $route.query.bsm == item.bsm ? 'iconfont iconbianing' : 'iconfont iconbian'"></i>
34 </span>
35 <template v-else>
36 <span class="qsztImg" v-if="item.qszt == '0'">
37 <!-- <span class="qsztFont" style="color: #2FA3FA; "></span> -->
38 <i :class="$route.query.bsm && $route.query.bsm == item.bsm ? 'iconfont iconlining' : 'iconfont iconlin'"
39 style="color: #F7B500;"></i>
40 </span>
41 <span class="qsztImg" v-if="item.qszt == '1'">
42 <!-- <span class="qsztFont" style="color: #1AD6E1; "></span> -->
43 <i :class="$route.query.bsm && $route.query.bsm == item.bsm ? 'iconfont iconzhenging' : 'iconfont iconzheng'"
44 style="color: #15D7E2;"></i>
45 </span>
46 <span class="qsztImg" v-if="item.qszt == '2'">
47 <!-- <span class="qsztFont" style="color: #45AEFD; "></span> -->
48 <i :class="$route.query.bsm && $route.query.bsm == item.bsm ? 'iconfont iconxianing' : 'iconfont iconxian'"
49 style="color: #2FA3FA;"></i>
50 </span>
51 </template>
52 <i class="iconfont iconziranchuang1 mr4" v-if="item.type == 'zrz'"></i>
53 <i class="iconfont iconduochuang1 mr4" v-if="item.type == 'dz'"></i>
54 <i class="iconfont icongouzhuwu mr4" v-if="item.type == 'gzw'"></i>
55 <span v-if="islpb">({{ item.type | bdcLxFilter }})</span>
56 <span>{{ item.mc }}</span>
57
58 </div>
59 <div v-if="item.children" class="reTree_icon" :style="{
60 height: 10 + 'px',
61 width: 10 + 'px',
62 }" :class="{
63 reTree_default_icon: item.children.length === 0,
64 reTree_collapse_icon: !islpb && item.expand && item.children.length > 0,
65 reTree_expand_icon: !islpb && !item.expand && item.children.length > 0,
66 }"></div>
67 <div v-if="item.children == null" class="reTree_icon" :class="{
68 reTree_default_icon: item.dm != 'G' && item.dm != 'J' && item.dm != 'Z',
69 reTree_expand_icon: item.dm == 'G' || item.dm == 'J' || item.dm == 'Z',
70 }" :style="{
71 height: 10 + 'px',
72 width: 10 + 'px',
73 }"></div>
74 </div>
75 <line-item :list="item.children" v-on="$listeners" :islpb="islpb" :size="size"
76 v-if="item.expand && item.children && item.children.length > 0"></line-item>
77 </div>
78 </div>
79 </template>
80 <script>
81 // import { getZdDetailList } from "@api/common"
82 export default {
83 name: "line-item",
84 props: {
85 list: {
86 ype: Array,
87 ault: () => {
88 turn [];
89 ,
90 },
91 formatData: {
92 ype: Array,
93 ault: () => {
94 turn [];
95
96 : {
97 e: Number,
98 ault: 16,
99 ble: {
100 e: Boolean,
101 ault: false,
102 b: {
103 e: Boolean,
104 efault: false,
105 }
106 ,
107 a () {
108 rn {
109 e: null,
110 reeXzqHeight: 0,
111 linshi: require("@/image/lpb/lin.png"),
112 zhengshi: require("@/image/lpb/zheng.png"),
113 ianshi: require("@/image/lpb/xian.png"),
114 }
115 ,
116 nted () {
117 onsole.log(this.$refs.curZxx,'this.$refs.curZxx');
118 this.$refs.curZxx) {
119 onsole.log(this.$refs.curZxx[0].dataset.zdbsm);
120 his.$store.state.oldZdbsm = this.$refs.curZxx[0].dataset.zdbsm;
121 : {
122 Click (item) {
123 self = this;
124 开启延时器,300ms的间隔区分单击和双击,解决双击时执行两次单击事件
125 learTimeout(self.time);
126 elf.time = setTimeout(() => {
127 em.expand = item.expand == undefined ? true : !item.expand;
128 self.$emit("itemClick", item);
129 source = ''
130 itch (this.$route.path) {
131 ase '/add':
132 source = '1,2'
133 break;
134 case '/change':
135 source = '2'
136 break;
137 case '/panel':
138 source = '0,1,2'
139 break;
140 e '/modify':
141 source = '1'
142 break;
143 e '/search':
144 source = '0,1,2'
145 break;
146 default:
147 break;
148
149 目录树的所有权类型单击时加载子节点
150 (!item.children && !item.type) {
151 et data = {
152 xzqbsm: item.xzq,
153 djqbsm: item.djq,
154 djzqbsm: item.djzq,
155 syqlx: item.dm,
156 source: source
157
158 / getZdDetailList(data).then((res) => {
159 // if (res.result.length > 0) {
160 / res.result.forEach(i => {
161 // if (i.children.length > 0) {
162 / i.expand = false;
163 }
164 / })
165 // self.$emit("ownerMethod", item, res.result);
166 / }
167 / }).catch((error) => {
168 / });
169
170 0);
171 键点击事件
172 enMenu (e, item, list) {
173 onsole.log(item, '右键list');
174 his.$emit("changeTop", e.pageY);
175 s.$emit("changeLeft", e.pageX);
176 s.$emit("changeZdData", item);
177 $emit("changeVisible", false);
178 所有权类型
179 e.log(item.dm,'item.dm ');
180 dm == 'G' || item.dm == 'J' ||item.dm == 'Z'){
181 mit("changeCreateVisible", true);
182
183 (item.type) {
184 zd':
185 $emit("changeIsZD", true);
186 mit("changeVisible", true);
187 ;
188 dz':
189 $emit("changeDzVisible", true);
190 ;
191 'zrz':
192 $emit("changeIsZD", false);
193 s.$emit("changeVisible", true);
194 ;
195 zdy':
196 $emit("changeLpbVisible", true);
197
198 ljz':
199 s.$emit("changeLpbVisible", true);
200 reak;
201 case 'gzw':
202 this.$emit("changeGzwVisible", true);
203 break;
204 fault:
205 reak;
206 键双击事件
207 ick (item, bsm) {
208 Timeout(this.time);
209 tore.state.newZdbsm = bsm;
210 tem.type) {
211 ':
212 tore.state.zdbsm = item.bsm;
213
214 :
215 tore.state.zrzbsm = item.bsm;
216 ;
217 'dz':
218 his.$store.state.dzbsm = item.bsm;
219 reak;
220 'gzw':
221 his.$store.state.gzwbsm = item.bsm;
222 reak;
223 fault:
224 reak;
225 m.type == 'zd' || item.type == 'dz' || item.type == 'zrz' || item.type == 'gzw') {
226 = {
227 2,
228 .bsm,
229 his.$route.query.auth ? this.$route.query.auth : '0,1,2'
230 .$route.query.workitemInstanceId) {
231 workitemInstanceId = this.$route.query.workitemInstanceId;
232 (this.$route.query.ywbsm) {
233 data.ywbsm = this.$route.query.ywbsm;
234 }
235 this.$router.push({
236 path: '/' + item.type,
237 query: data
238 });
239 }
240 },
241 closeMenu () {
242 this.$emit("changeVisible", false);
243 },
244 },
245 watch: {
246 visible (value) {
247 if (value) {
248 document.body.addEventListener("click", this.closeMenu);
249 } else {
250 document.body.removeEventListener("click", this.closeMenu);
251 }
252 },
253 },
254 };
255 </script>
256 <style lang="scss">
257 .content {
258 height: 100%;
259 width: 100%;
260 }
261
262 .column-start-center {
263 display: flex;
264 display: -webkit-flex;
265 flex-direction: column;
266 justify-content: flex-start;
267 align-items: center;
268 }
269
270 .row-flex-start {
271 display: flex;
272 display: -webkit-flex;
273 flex-direction: row;
274 justify-content: flex-start;
275 align-items: center;
276 }
277
278 .nowrap {
279 overflow: hidden;
280 text-overflow: ellipsis;
281 white-space: nowrap;
282 }
283
284 // .active_color {
285 // color: #ffffff;
286 // }
287 .reTree_icon {
288 width: 17px;
289 height: 17px;
290 margin-right: 16px;
291 }
292
293 .no_icon {
294 width: 17px;
295 height: 17px;
296 }
297
298 .tree_item_box {
299 position: relative;
300 width: 100%;
301 cursor: pointer;
302 }
303
304 // .ofy_scroll{
305 // overflow-y: scroll;
306 // overflow-x: hidden;
307 // }
308 .basic_layer {
309 width: 100%;
310 position: relative;
311 color: #4a4a4a;
312 cursor: pointer;
313
314 .layer_text {
315 flex: 1;
316 line-height: 40px;
317 }
318 }
319
320 .first_vertical_line {
321 content: "";
322 position: absolute;
323 width: 1px;
324 left: 6px;
325 top: 17px;
326 background: #c3c5c8;
327 }
328
329 .basic_banner {
330 position: relative;
331 width: 279px;
332 height: 40px;
333 box-sizing: border-box;
334 padding-left: 20px;
335 }
336
337 .lpb_basic_banner {
338 padding-left: 42px;
339 }
340
341 .second_layer {
342 position: relative;
343 width: calc(100% - 20px);
344 cursor: pointer;
345 padding-left: 20px;
346
347 .basic_banner {
348 width: 100%;
349 }
350 }
351
352 .zxxNode {
353 width: 279px !important;
354 position: relative;
355 left: -80px;
356 text-indent: 80px;
357 }
358
359 .iszd {
360 .tree_item_box {
361 .zxxNode {
362 padding-left: 0;
363 left: 0;
364 }
365 }
366 }
367
368 .iszrz,
369 .isgzw {
370 left: 0px !important;
371 text-indent: 96px;
372 }
373
374 .isdz {
375 text-indent: 96px !important;
376
377 .iszrz {
378 left: 0 !important;
379 text-indent: 112px !important;
380 }
381 }
382
383 .third_layer {
384 position: relative;
385 width: calc(100% - 20px);
386 cursor: pointer;
387 padding-left: 20px;
388 }
389
390 .white_layer {
391 color: black !important;
392 }
393
394 .lpbTree-node {
395 position: absolute;
396 top: 1px;
397 left: 0;
398 }
399
400 // .second_layer::before {
401 // content: "";
402 // position: absolute;
403 // height: 1px;
404 // width: 16px;
405 // left: 8px;
406 // top: 8px;
407 // opacity: .5;
408 // background: url('../../assets/images/rowline1.png');
409 // background-position-y: center;
410 // }
411 // .third_layer::before {
412 // content: "";
413 // position: absolute;
414 // height: 1px;
415 // width: 16px;
416 // left: 8px;
417 // top: 8px;
418 // opacity: .5;
419 // background: url('../../assets/images/rowline1.png');
420 // background-position-y: center;
421 // }
422
423 // .linkLine_default::after {
424 // content: "";
425 // position: absolute;
426 // height: 100%;
427 // width: 1px;
428 // left: 7px;
429 // top: 0px;
430 // opacity: .5;
431 // background: url('../../assets/images/colline1.png');
432 // background-position-x: center;
433 // }
434 // .linkLine_first::after {
435 // content: "";
436 // position: absolute;
437 // /* 为了触顶 */
438 // top: -16px;
439 // height: calc(100% + 16px);
440 // width: 1px;
441 // left: 7px;
442 // opacity: .5;
443 // background: url('../../assets/images/colline1.png');
444 // background-position-x: center;
445 // }
446 // // 上半截
447 // .linkLine_half_top::after {
448 // content: "";
449 // position: absolute;
450 // height: 23px;
451 // top: -14px;
452 // width: 1px;
453 // left: 7px;
454 // opacity: .5;
455 // background: url('../../assets/images/colline1.png');
456 // background-position-x: center;
457 // }
458 // .linkLine_last::after {
459 // content: "";
460 // position: absolute;
461 // height: 9px;
462 // width: 1px;
463 // left: 7px;
464 // top: 0px;
465 // opacity: .5;
466 // background: url('../../assets/images/colline1.png');
467 // background-position-x: center;
468 // }
469
470 .reTree_default_icon {
471 // opacity: .5;
472 background-size: contain;
473 }
474
475 .reTree_collapse_icon {
476 // opacity: .5;
477 background: url("../../assets/images/arrow-down-bold.svg") no-repeat center center;
478 background-size: contain;
479 }
480
481 .reTree_expand_icon {
482 // opacity: .5;
483 background: url("../../assets/images/arrow-left-bold.svg") no-repeat center center;
484 background-size: contain;
485 }
486
487 .lpbTree_collapse_icon {
488 // opacity: .5;
489 background-size: contain;
490 }
491
492 .lpbTree_expand_icon {
493 // opacity: .5;
494 background: url("../../assets/images/arrow-left-bold.svg") no-repeat center center;
495 background-size: contain;
496 }
497
498
499 .reTree_focus_icon {
500 // opacity: .5;
501 background: url("../../assets/images/reTree_focus_.svg") no-repeat center center;
502 background-size: contain;
503 }
504
505 .qsztImg {
506 width: 16px;
507 margin-right: 6px;
508 // border-radius: 50%; height: 20px; width: 20px; display: inline-block;
509 }
510
511 .curNode {
512 >.basic_banner {
513 background: #E9F5FF;
514 box-shadow: inset 2px 0 0 0 #0C71FB;
515 color: #0C71FB;
516 }
517 }
518
519 .qsztFont {
520 text-align: center;
521
522 display: inline-block;
523 width: 16px;
524 height: 16px;
525 font-size: 12px;
526 line-height: 16px;
527 border: 1px solid;
528 border-radius: 8px;
529 }
530
531 .mr4 {
532 margin-right: 4px;
533 }
534 </style>
1 <template>
2 <div class="content column-start-center reTree_box"
3 :style="{ fontSize: (size || 16) + 'px', lineHeight: (size || 16) + 'px', width: (islpb ? '200' : '286') + 'px' }">
4 <div class="column-start-center basic_layer" :class="islpb ? 'white_layer' : ''" v-for="(item, index) in formatData"
5 :key="index">
6 <div class="row-flex-start basic_banner" :class="{
7 active_color: item.expand && item.children.length > 0,
8 }" @click="itemClick(item)">
9
10 <div class="layer_text nowrap" @contextmenu.prevent="openMenu($event, item)"><i class="iconfont iconguoyou"></i>
11 {{ item.mc }}</div>
12 <div class="reTree_icon" :style="{
13 height: 10 + 'px',
14 width: 10 + 'px',
15 }" :class="{
16 reTree_default_icon: item.children.length === 0,
17 reTree_collapse_icon: !islpb && item.expand && item.children.length > 0,
18 reTree_expand_icon: !islpb && !item.expand && item.children.length > 0,
19 lpbTree_collapse_icon: islpb && item.expand && item.children.length > 0,
20 lpbTree_expand_icon: islpb && !item.expand && item.children.length > 0,
21 }"></div>
22 </div>
23
24 <lineItem v-if="item.expand && item.children.length > 0" v-on="$listeners" @ownerMethod="ownerMethod(arguments)"
25 @changeTop="changeTop" @changeZdData="changeZdData" @changeLeft="changeLeft" @changeVisible="changeVisible"
26 @changeLpbVisible="changeLpbVisible" @changeIsZD="changeIsZD" @changeCreateVisible="changeCreateVisible"
27 @changeDzVisible="changeDzVisible" @changeGzwVisible="changeGzwVisible" :list="item.children"
28 :visible="zrzVisible" :size="size" :islpb="islpb" :formatData="formatData"></lineItem>
29 </div>
30
31 <ul v-show="zrzVisible" :style="{ left: left + 'px', top: top + 'px' }" class="contextmenu">
32 <li @click="postionToMap">定位</li>
33 <li @click="importGeo">导入图形</li>
34 <li>
35 导出图形
36 <ul class="contextmenu childUl">
37 <li @click="exportText">文本</li>
38 <li @click="exportCad">CAD</li>
39 <li @click="exportExcel">Excel</li>
40 <li @click="exportToShp">ESRI Shape</li>
41 </ul>
42 </li>
43 <li @click="drsx" :class="zdQszt == '0' ? '' : 'noEdit'">导入属性</li>
44 <li @click="dcsx">导出属性</li>
45 <li v-show="!isZD">导入楼盘</li>
46 <!-- <li>重叠分析</li> -->
47 <li v-show="isZD && (zdQszt == '1' || zdQszt == '2')" @click="openCreateDialog('dzw')">添加定着物</li>
48 <li v-show="isZD && (zdQszt != '1' && zdQszt != '2')" class="noEdit">添加定着物</li>
49 <li @click="deleteByBsm()">删除</li>
50 <li @click="deleteGeoByBsm()">删除图形</li>
51 </ul>
52 <ul v-show="dzVisible" :style="{ left: left + 'px', top: top + 'px' }" class="contextmenu">
53 <li @click="openCreateDialog('zrz')">新建自然幢</li>
54 <li @click="deleteByBsm()">删除</li>
55 </ul>
56 <ul v-show="createVisible" :style="{ left: left + 'px', top: top + 'px' }" class="contextmenu">
57 <li @click="openCreateDialog">新建宗地</li>
58 </ul>
59 <!-- 构筑物删除 -->
60 <ul v-show="gzwVisible" :style="{ left: left + 'px', top: top + 'px' }" class="contextmenu">
61 <li @click="deleteByBsm">删除</li>
62 </ul>
63 <ul v-show="lpbvisible" :style="{ left: lpbleft + 'px', top: lpbtop + 'px' }" class="contextmenu">
64 <li v-show="zdData.type == 'zrz'" @click="openLpbDialog('ljz')">添加逻辑幢</li>
65 <li v-show="zdData.type == 'zrz' || zdData.type == 'ljz'" @click="openLpbDialog('zdy')">添加幢单元</li>
66 <li v-show="zdData.type == 'zrz' || zdData.type == 'ljz' || zdData.type == 'zdy'" @click="openLpbDialog('ch')">
67 添加层户</li>
68 <li v-show="zdData.type == 'ljz'" @click="deleteLjz">删除</li>
69 <li v-show="zdData.type == 'zdy'" @click="deleteZdy">删除</li>
70 </ul>
71
72 <!--@close="closeImportDialog"-->
73 <el-dialog :close-on-click-modal="false" title="导入图形" :modal="false" custom-class="importDialog"
74 :visible.sync="improtDialog" width="30%" @close="closeImportDialog">
75 <import-geo :property-info="zdData" :timeLine="new Date().getTime()" :geo-info="currentClickZdGeo"
76 @closeImportDialog="closeImportDialog"></import-geo>
77 </el-dialog>
78 <!-- 添加定着物弹框 -->
79 <el-dialog :close-on-click-modal="false" title="新建" :modal="false" :visible.sync="dialogVisible" width="48%">
80 <!-- <Create @closeDialog="closeDialog" :auth="true" :createZrz="createZrz" ></Create> -->
81 </el-dialog>
82 <!-- <sxdr :sxdr-visible="sxdrVisible" @close="sxdrClose" :dylx="zdData.type" :bsm="zdData.bsm"></sxdr> -->
83 </div>
84 </template>
85 <script>
86 import lineItem from "./lineItem.vue";
87 // import { deleteZdInfoByBsm, exportShp, exportExcel, delJzdByBsm, delJzxByBsm } from "@api/zd";
88 // import Create from "../../views/panel/create/index";
89 import ImportGeo from './tx/importGeo'
90 port geoUtils from "@/components/lineTree/tx/js/geoUtils";
91 rt featureUpdate from "@/libs/map/featureUpdate";
92 ort { deleteLjz, deleteZdy } from "@api/lpcx.js"
93 exportTemJson from '@/api/json/exportTemplate.json'
94 mport sxdr from '@/components/sxdr/sxdr'
95 port default {
96 nheritAttrs: false,
97 ps: {
98 {
99 e: Array,
100 ault: () => {
101 turn[];
102
103 : {
104 e: Number,
105 ault: 16,
106 b: {
107 e: Boolean,
108 ault: false,
109
110 omponents: { lineItem, Create, ImportGeo, sxdr },
111 ixins: [geoUtils, featureUpdate],
112 a() {
113 rn {
114 rVisible: false,
115 electedDetail: { },
116 timer: { },
117 formatData: this.$store.state.treeData,
118 isible: false,
119 top: 0,
120 left: 0,
121 sZD: true,
122 ata: { },
123 rentClickZdGeo: "",
124 mprotDialog: false,
125 ialogVisible: false,
126 制自然幢右键菜单
127 Visible: false,
128 盘表
129 visible: false,
130 top: 0,
131 left: 0,
132 /控制新建宗地菜
133 reateVisible: false,
134
135 isible: false,
136 属状态
137 szt: null,
138 : "PROJCS[\"XADFZBX\",GEOGCS[\"GCS_WGS_1984\",DATUM[\"D_WGS_1984\",SPHEROID[\"WGS_1984\",6378137.0,298.257223563]],PRIMEM[\"Greenwich\",0.0],UNIT[\"Degree\",0.0174532925199433]],PROJECTION[\"Transverse_Mercator\"],PARAMETER[\"False_Easting\",0.0],PARAMETER[\"False_Northing\",0.0],PARAMETER[\"Central_Meridian\",0.0],PARAMETER[\"Scale_Factor\",1.0],PARAMETER[\"Latitude_Of_Origin\",0.0],UNIT[\"Meter\",1.0]]",
139 ateZrz: false,
140 /构筑
141 zwVisible: false
142
143 ch: {
144 (n, o) {
145 s.formatData = this.preDealData(n);
146 isible(value) {
147 (value) {
148 ment.body.addEventListener("click", this.closeMenu);
149 lse {
150 cument.body.removeEventListener("click", this.closeMenu);
151
152
153 Visible(value) {
154 (value) {
155 cument.body.addEventListener("click", this.closeMenu);
156 lse {
157 cument.body.removeEventListener("click", this.closeMenu);
158 wVisible(value) {
159 f(value) {
160 document.body.addEventListener("click", this.closeMenu);
161 lse {
162 cument.body.removeEventListener("click", this.closeMenu);
163 }
164 zrzVisible(value) {
165 (value) {
166 ment.body.addEventListener("click", this.closeMenu);
167 lse {
168 document.body.removeEventListener("click", this.closeMenu);
169 reateVisible(value) {
170 (value) {
171 document.body.addEventListener("click", this.closeMenu);
172 } else {
173 document.body.removeEventListener("click", this.closeMenu);
174 }
175 }
176 ed() {
177 nextTick(() => {
178 eDealData(this.pd);
179 ndTreeItemById(["6b5af49d803f97baf06afb897de257f5"]);
180
181 {
182 .log(this.zdData, 'zdData')
183 ow.open(`api/tx/excelGeo/export?bsm=${this.zdData.bsm}&type=${this.zdData.type}`)
184 `api/tx/excelGeo/export?bsm=${this.zdData.bsm}&type=${this.zdData.type}`
185 mIF = document.createElement("iframe");
186 src = url;
187 style.display = "none";
188 t.body.appendChild(elemIF)
189 {
190 his.zdQszt != '0') {
191
192 drVisible = true;
193 e() {
194 sxdrVisible = false;
195 ading() {
196 his.$emit("loading")
197
198 eleteLjz() {
199 console.log("删除逻辑幢")
200 console.log(this.zdData, "zdData")
201 deleteLjz(this.zdData.bsm).then(res => {
202 if (res.success) {
203 this.loading()
204 else {
205 dy() {
206 log("删除幢单元")
207 e.log(this.zdData, "zdData")
208 teZdy(this.zdData.bsm).then(res => {
209 f(res.success) {
210 this.loading()
211 }
212
213 ,
214 变菜单数据
215 Visible(data) {
216 s.zrzVisible = data;
217 s.lpbvisible = false;
218 dzVisible = false;
219 wVisible = false;
220 ta(data) {
221 = data;
222 zt = data.qszt;
223 (data) {
224 p = data;
225 lpbtop = data;
226 angeLeft(data) {
227 this.left = data;
228 this.lpbleft = data;
229 },
230 changeIsZD(data) {
231 this.isZD = data;
232 },
233 changeLpbVisible(data) {
234 this.lpbvisible = data;
235 this.zrzVisible = false;
236 this.dzVisible = false;
237 this.gzwVisible = false;
238 },
239 changeCreateVisible(data) {
240 this.createVisible = true;
241 },
242 //多幢
243 changeDzVisible(data) {
244 this.dzVisible = data;
245 this.zrzVisible = false;
246 this.lpbvisible = false;
247 this.gzwVisible = false;
248 },
249 //构筑物
250 changeGzwVisible(data) {
251 this.gzwVisible = data;
252 this.zrzVisible = false;
253 this.lpbvisible = false;
254 this.dzVisible = false;
255 },
256 //添加定着物
257 openCreateDialog(type) {
258 if (type == 'zrz') {
259 this.createZrz = true;
260 }
261 console.log(this.zdData, 'this.zdData');
262 this.dialogVisible = true;
263 this.$store.state.zdbsm = this.zdData.zdbsm;
264 if (this.zdData.type == 'dz') {
265 this.$store.state.dzbsm = this.zdData.bsm;
266 } else {
267 this.$store.state.dzbsm = '';
268 }
269 },
270 //关闭添加定着物弹框
271 closeDialog() {
272 this.dialogVisible = false;
273 this.createZrz = false;
274 },
275 preDealData(list) {
276 //楼盘表目录树没有expand属性
277 // if(list == null){
278 // return list
279 // }else{
280 list.forEach((x) => {
281 if (x.expand == undefined) this.$set(x, "expand", true);
282 if (x.children && x.children.length > 0) {
283 this.preDealData(x.children);
284 }
285 });
286 return list;
287 // }
288 },
289 // 根据id展开树的具体项
290 expandTreeItemById(idList) {
291 let _this = this;
292 function loopTree (list) {
293 list.forEach((x) => {
294 if (idList.includes(x.zdbsm)) {
295 _this.$set(x, "expand", true);
296 } else {
297 _this.$set(x, "expand", false);
298 }
299 if (x.children && x.children.length > 0) loopTree(x.children);
300 });
301 return list;
302 }
303 this.formatData = loopTree(this.pd);
304 console.log(this.formatData, "this.formatData");
305 },
306 itemClick(item) {
307 // item.expand = item.expand == undefined? true:!item.expand;
308 this.formatData.forEach(i => {
309 if (i.bsm != item.bsm) {
310 i.expand = false
311 } else {
312 // i.expand = !item.expand
313 }
314 })
315 item.expand = !item.expand;
316 // this.$emit("itemClick", item);
317 },
318 //给所有权类型添加子节点
319 ownerMethod(arr) {
320 let item = arr[0];
321 let list = arr[1]
322 this.formatData.forEach(i => {
323 if (i.bsm == item.xzq) {
324 i.children.forEach(j => {
325 if (j.bsm == item.djq) {
326 j.children.forEach(k => {
327 if (k.bsm == item.djzq) {
328 k.children.forEach(n => {
329 if (n.dm == item.dm) {
330 this.$nextTick(() => {
331 n.children = list;
332 })
333 }
334 })
335 }
336 })
337 }
338 })
339 }
340 });
341 this.$store.state.treeData = this.formatData;
342 },
343 //自然幢右键点击事件
344 openMenu(e, item) {
345 this.lpbleft = e.pageX;
346 this.lpbtop = e.pageY;
347 this.zdData = item;
348 this.changeLpbVisible(true);
349 },
350 //关闭右键菜单
351 closeMenu() {
352 this.zrzVisible = false;
353 this.lpbvisible = false;
354 this.dzVisible = false;
355 this.gzwVisible = false;
356 },
357 //楼盘表右键菜单项打开父组件弹框
358 openLpbDialog(type) {
359 this.$parent.openLpbDialog(this.zdData, type);
360 },
361 detailDoubleClick(data) {
362 clearTimeout(this.timer);
363 this.selectedDetail = data;
364 this.$emit("detailDoubleClick", data);
365 },
366 //右键菜单的删除
367 deleteByBsm() {
368 let name = '';
369 switch (this.zdData.type) {
370 case 'zd':
371 name = '宗地'
372 break;
373 case 'dz':
374 name = '多幢'
375 break;
376 case 'zrz':
377 name = '自然幢'
378 break;
379 case 'gzw':
380 name = '构筑物'
381 break;
382
383 default:
384 break;
385 }
386 this.$confirm('是否确定删除该' + name + '?', '提示', {
387 confirmButtonText: '确定',
388 cancelButtonText: '取消',
389 type: 'warning'
390 }).then(() => {
391 let params = { "bsm": this.zdData.bsm, "type": this.zdData.type };
392 deleteZdInfoByBsm(params)
393 .then((res) => {
394 console.log(res);
395 if (res.success) {
396 this.$message({
397 type: 'success',
398 message: '删除成功!'
399 });
400 this.$router.push("/panel");
401 } else {
402 this.$message({
403 message: res.message,
404 type: "warning",
405 });
406 }
407 })
408 .catch((error) => { });
409 }).catch(() => {
410
411 });
412 var self = this;
413 var BSM = "";
414 var type = this.zdData.type;
415 if (type == "zd") {
416 BSM = this.zdData.zdbsm;
417 } else {
418 BSM = this.zdData.bsm;
419 }
420 //删除图形相关信息
421 var type = this.zdData.type;
422 this.queryGeoByBsm(BSM, type, function (features) {
423 if (features && features.length > 0) {
424 var layer = null;
425 if (type == 'zd') {
426 layer = self.getLayerByName("ZDJBXX");
427 } else {
428 layer = self.getLayerByName("ZRZ");
429
430 }
431 var featureUrl = layer.layerUrl.replace("MapServer", "FeatureServer");
432 featureUrl += "/" + layer.id;
433 self.delGraphic(featureUrl, features[0], null);
434 }
435 });
436 },
437 //删除图形
438 deleteGeoByBsm() {
439 var self = this;
440 var BSM = "";
441 var type = this.zdData.type;
442 if (type == "zd") {
443 BSM = this.zdData.zdbsm;
444 } else {
445 BSM = this.zdData.bsm;
446 }
447 //删除图形相关信息
448 var type = this.zdData.type;
449 this.queryGeoByBsm(BSM, type, function (features) {
450 if (features && features.length > 0 && features[0].geometry.rings.length > 0) {
451 var layer = null;
452 if (type == 'zd') {
453 layer = self.getLayerByName("ZDJBXX");
454 } else {
455 layer = self.getLayerByName("ZRZ");
456 }
457 var featureUrl = layer.layerUrl.replace("MapServer", "FeatureServer");
458 featureUrl += "/" + layer.id;
459 features[0].geometry = null;
460 self.updateGraphic(featureUrl, features, function (res) {
461 if (!res.updateFeatureResults[0].error) {
462 self.$message.warning("删除成功!!!")
463 //清除图层
464 self.clearHighlightLayer("testMap");
465 //self.addGeoByBsm(BSM,type,"testMap");
466 //删除界址点 界址线
467 if (type == 'zd') {
468 self.delJzdAndJzx(BSM);
469 }
470 }
471
472 });
473 } else {
474 self.$message.warning("暂无图形信息!!!")
475 }
476 });
477 },
478 //删除宗地界址点 界址线
479 delJzdAndJzx(bsm) {
480 delJzdByBsm({ zdbsm: bsm }).then(res => {
481 if (res.success) {
482 console.log("删除界址点成功!!!");
483 }
484 });
485 delJzxByBsm({ zdbsm: bsm }).then(res => {
486 if (res.success) {
487 console.log("删除界址线成功!!!");
488 }
489 })
490 },
491 /*
492 * 导入图形
493 * */
494 importGeo() {
495 var self = this;
496 var BSM = "";
497 if (this.zdData.qszt != '0') {
498 this.$message.warning("不是临时数据,不能导入图形!!!");
499 return;
500 }
501 var type = this.zdData.type;
502 if (type == "zd") {
503 BSM = this.zdData.zdbsm;
504 } else {
505 BSM = this.zdData.bsm;
506 }
507 //当确定导入图形是 跳转到图形界面
508 this.queryGeoByBsm(BSM, type, function (features) {
509 if (features && features.length > 0) {
510 if (features[0].geometry && features[0].geometry.rings.length > 0) {
511 self.$confirm('该条数据有地块信息,是否继续导入?', '提示', {
512 confirmButtonText: '继续',
513 cancelButtonText: '取消',
514 type: 'warning'
515 }).then(() => {
516 self.postionToMap();
517 self.improtDialog = true;
518 self.currentClickZdGeo = features[0];
519 }).catch(() => {
520 self.$message({
521 type: 'info',
522 message: '已取消'
523 });
524 });
525 } else {
526 self.postionToMap();
527 self.currentClickZdGeo = features[0];
528 self.improtDialog = true;
529 }
530
531 } else {
532 self.postionToMap();
533 self.currentClickZdGeo = null;
534 self.improtDialog = true;
535 }
536 });
537 },
538 //导出文本文件
539 exportText() {
540 var self = this;
541 var type = this.zdData.type;
542 var BSM = type == 'zd' ? this.zdData.zdbsm : this.zdData.bsm;
543 this.queryGeoByBsm(BSM, type, function (features) {
544 if (features && features.length > 0 && features[0].geometry.rings.length > 0) {
545 var data = features[0];
546 var jzdInfo = self.craetJZPoint(data);
547 var textCotent = "";
548 textCotent += exportTemJson.exprotTextAttr;
549 textCotent += "[地块坐标]\n";
550 var dkMc = "", dkYt = "";
551 if (type == 'zd') {
552 dkMc = data.attributes.ZL;
553 dkYt = data.attributes.YT;
554 } else {
555 dkMc = data.attributes.XMMC + data.attributes.JZWMC;
556 dkYt = "建设用地";
557 }
558 textCotent += ",,," + dkMc + ",面,," + dkYt + ",,@\n";
559 for (var i = 0; i < jzdInfo.length; i++) {
560 textCotent += jzdInfo[i].jzdh + "," + jzdInfo[i].sxh + "," +
561 jzdInfo[i].x + "," + jzdInfo[i].y + "\n"
562 }
563 self.downloadTxt(textCotent, "outPut.txt");
564 }
565 }, { wkt: this.wkt });
566 },
567 //导出shp文件
568 exportToShp() {
569 var self = this;
570 var type = this.zdData.type;
571 var BSM = type == 'zd' ? this.zdData.zdbsm : this.zdData.bsm;
572 this.queryGeoByBsm(BSM, type, function (features) {
573 if (features && features.length > 0 && features[0].geometry.rings.length > 0) {
574 var data = JSON.stringify(features[0]);
575 window.location.href = "/api/tx/shpUtils/writeShp?strObj=" + encodeURI(data)
576 /* exportShp({
577 "strObj":encodeURI(data)
578 }).then(res => {
579 debugger
580 });*/
581 } else {
582 self.$message.warning("暂无空间信息!!!!");
583 }
584 }, { wkt: this.wkt });
585 },
586 //导出excel
587 exportExcel() {
588 var self = this;
589 var type = this.zdData.type;
590 var BSM = type == 'zd' ? this.zdData.zdbsm : this.zdData.bsm;
591 this.queryGeoByBsm(BSM, type, function (features) {
592 if (features && features.length > 0 && features[0].geometry.rings.length > 0) {
593 var data = features[0];
594 var jzdInfo = self.craetJZPoint(data);
595 var submitData = [];
596 for (var i = 0; i < jzdInfo.length; i++) {
597 var obj = {
598 jzdHao: jzdInfo[i].jzdh,
599 x: jzdInfo[i].x,
600 y: jzdInfo[i].y,
601 diKuaiQuanHao: jzdInfo.sxh
602 }
603 submitData.push(obj);
604 }
605 exportExcel(submitData).then((res) => {
606 if (res.code == 200) {
607 var path = res.result;
608 window.location.href = "/api/tx/excelGeo/download?filePath=" + encodeURI(path);
609 }
610 });
611 } else {
612 self.$message.warning("还没有空间信息!!!!")
613 }
614 }, { wkt: this.wkt })
615 },
616 //导出CAD
617 exportCad() {
618 //TODO
619 },
620 downloadTxt(text, fileName) {
621 let element = document.createElement('a')
622 element.setAttribute('href', 'data:text/plain;charset=utf-8,' + encodeURIComponent(text))
623 element.setAttribute('download', fileName)
624 element.style.display = 'none'
625 element.click()
626 },
627 //图形定位
628 postionToMap() {
629 var type = this.zdData.type;
630 var BSM = type == 'zd' ? this.zdData.zdbsm : this.zdData.bsm;
631 if (this.$route.path == "/viewMap") {
632 //定位到当前空间位置
633 // TODO 这个方法只是为了支撑功能
634 this.postionToThisGeo(BSM, type);
635 return;
636 }
637 var curretRouterInfo = {
638 path: this.$route.path,
639 query: this.$route.query
640 }
641 sessionStorage.setItem("curretRouterInfo", JSON.stringify(curretRouterInfo));
642 this.$router.push({
643 path: "/viewMap",
644 query: {
645 bsm: BSM,
646 type: type
647 }
648 });
649 },
650
651 //关闭图形弹框
652 closeImportDialog() {
653 this.improtDialog = false;
654 this.clearOverLayer();
655 }
656
657 },
658 };
659 </script>
660 <style lang="scss" scoped>
661 .content {
662 height: 100%;
663 width: 100%;
664 overflow-y: scroll;
665 overflow-x: hidden;
666 }
667
668 .column-start-center {
669 display: flex;
670 display: -webkit-flex;
671 flex-direction: column;
672 justify-content: flex-start;
673 align-items: center;
674
675 }
676
677 .row-flex-start {
678 display: flex;
679 display: -webkit-flex;
680 flex-direction: row;
681 justify-content: flex-start;
682 align-items: center;
683 }
684
685 .nowrap {
686 overflow: hidden;
687 text-overflow: ellipsis;
688 white-space: nowrap;
689 }
690
691 .reTree_icon {
692 width: 17px;
693 height: 17px;
694 margin-right: 16px;
695 }
696
697 .basic_layer {
698 width: 100%;
699 position: relative;
700 color: #4a4a4a;
701 cursor: pointer;
702 -moz-user-select: none;
703 -o-user-select: none;
704 -khtml-user-select: none;
705 -webkit-user-select: none;
706 -ms-user-select: none;
707 user-select: none;
708
709 .layer_text {
710 flex: 1;
711 }
712 }
713
714 .white_layer {
715 color: black !important;
716 }
717
718 .first_vertical_line {
719 content: "";
720 position: absolute;
721 width: 1px;
722 left: 6px;
723 top: 17px;
724 background: #c3c5c8;
725 }
726
727 .basic_banner {
728 position: relative;
729 width: 280px;
730 height: 40px;
731 }
732
733 .second_layer {
734 position: relative;
735 width: 100%;
736 cursor: pointer;
737 padding-left: 25px;
738 }
739
740 .second_layer::before {
741 content: "";
742 position: absolute;
743 height: 1px;
744 width: 16px;
745 left: 9px;
746 top: 9px;
747 background: #c3c5c8;
748 }
749
750 .linkLine_default::after {
751 content: "";
752 position: absolute;
753 height: 100%;
754 width: 1px;
755 left: 9px;
756 top: 0px;
757 background: #c3c5c8;
758 }
759
760 .linkLine_first::after {
761 content: "";
762 position: absolute;
763 /* 为了触顶 */
764 top: -16px;
765 height: calc(100% + 16px);
766 width: 1px;
767 left: 9px;
768 background: #c3c5c8;
769 }
770
771 // 上半截
772 .linkLine_half_top::after {
773 content: "";
774 position: absolute;
775 height: 23px;
776 top: -14px;
777 width: 1px;
778 left: 9px;
779 background: #c3c5c8;
780 }
781
782 .linkLine_last::after {
783 content: "";
784 position: absolute;
785 height: 9px;
786 width: 1px;
787 left: 9px;
788 top: 0px;
789 background: #c3c5c8;
790 }
791
792 .reTree_collapse_icon {
793 background: url("../../assets/images/arrow-down-bold.svg") no-repeat center center;
794 background-size: contain;
795 }
796
797 .reTree_default_icon {
798 background: url("../../assets/images/reTree_default_.svg") no-repeat center center;
799 background-size: contain;
800 }
801
802 .reTree_expand_icon {
803 background: url("../../assets/images/arrow-left-bold.svg") no-repeat center center;
804 background-size: contain;
805 }
806
807 .lpbTree_collapse_icon {
808 // opacity: .5;
809 background: url("../../assets/images/lpbTree_expand_.svg") no-repeat center center;
810 background-size: contain;
811 }
812
813 .lpbTree_expand_icon {
814 // opacity: .5;
815 background: url("../../assets/images/lpbTree_collapse_.svg") no-repeat center center;
816 background-size: contain;
817 }
818
819 .reTree_focus_icon {
820 background: url("../../assets/images/reTree_focus_.svg") no-repeat center center;
821 background-size: contain;
822 }
823
824 /* /deep/ .importDialog{
825 margin-top: 120px!important;
826 margin-left: 291px;
827 } */
828 </style>
1 <template>
2 <div>
3 <ul class="importDiv" v-if="!resultDialog && !txtResultDialog && !dealDialog">
4 <li>
5 <el-upload class="avatar-uploader" action="#" accept=".txt" :auto-upload="false" :show-file-list="false"
6 :on-change="txtFileChange">
7 <!-- <el-button size="small" type="primary">点击上传</el-button>-->
8 <i class="iconfont iconshangchuan"></i>
9 <div class="title">TXT文本格式</div>
10 <div class="templateDowload">
11 <a href="#" @click.stop="downloadFile('./fileTemplate/txttemplet.txt', 'txttemplet.txt')">TXT模板下载</a>
12 </div>
13 </el-upload>
14 </li>
15 <li>
16 <el-upload class="avatar-uploader" action="/api/tx/shpUtils/readShp" accept=".zip" :show-file-list="false"
17 :on-success="shpFileSuccess">
18 <!--<el-button size="small" type="primary">点击上传</el-button>-->
19 <i class="iconfont iconshangchuan"></i>
20 <div class="title">ESRI Shape文件格式</div>
21 </el-upload>
22 </li>
23 <li>
24 <el-upload class="avatar-uploader" action="https://jsonplaceholder.typicode.com/posts/" accept=".dwg,.dxf"
25 :show-file-list="false" :on-success="cadFileSuccess">
26 <!-- <el-button size="small" type="primary">点击上传</el-button>-->
27 <i class="iconfont iconshangchuan"></i>
28 <div class="title">CAD文件</div>
29 </el-upload>
30 </li>
31 <li>
32 <el-upload class="avatar-uploader" action="/api/tx/excelGeo/readExcel" accept=".xls,.xlsx"
33 :show-file-list="false" :on-success="excelFileSuccess">
34 <!--<el-button size="small" type="primary">点击上传</el-button>-->
35 <i class="iconfont iconshangchuan"></i>
36 <div class="title">Excel文件格式</div>
37 <div class="templateDowload">
38 <a href="#"
39 @click.stop="downloadFile('./fileTemplate/exceltemplet.xlsx', 'exceltemplet.xlsx')">Excel模板下载</a>
40 </div>
41 </el-upload>
42 </li>
43 </ul>
44 <div v-if="resultDialog">
45 <el-form :model="zdForm" ref="zdCheckForm" label-width="100px" size="small" @submit.native.prevent
46 class="demo-ruleForm">
47 <el-form-item label="宗地" prop="zdBsm" :rules="[
48 { required: true, message: '请选择宗地', trigger: 'change' },
49 ]">
50 <el-select v-model="zdForm.zdBsm" filterable placeholder="请选择" @change="zdChange">
51 <el-option v-for="item in resultData" :key="item.objectid" :label="item.XMMC" :value="item">
52 </el-option>
53 </el-select>
54 </el-form-item>
55 <el-form-item>
56 <el-button type="primary" @click="submitForm('zdCheckForm')">导入</el-button>
57 <el-button @click="cancel('zdCheckForm')">取消</el-button>
58 </el-form-item>
59 </el-form>
60 </div>
61 <div v-if="txtResultDialog">
62 <el-form :model="txtZd" ref="txtZdForm" label-width="100px" size="small" @submit.native.prevent
63 class="demo-ruleForm">
64 <el-form-item label="地块名称" prop="name" :rules="[
65 { required: true, message: '请选择地块', trigger: 'change' },
66 ]">
67 <el-select v-model="txtZd.name" filterable placeholder="请选择" @change="txtChange">
68 <el-option v-for="(item, index) in txtResult" :key="index" :label="item.attributes.name"
69 :value="item.attributes.name">
70 </el-option>
71 </el-select>
72 </el-form-item>
73 <el-form-item>
74 <el-button type="primary" @click="submitTxtForm('txtZdForm')">导入</el-button>
75 <el-button @click="cancelTxtForm('txtZdForm')">取消</el-button>
76 </el-form-item>
77 </el-form>
78 </div>
79 <div v-if="dealDialog">
80 <el-form :model="dealForm" ref="dealForm" label-width="100px" size="small" @submit.native.prevent
81 class="demo-ruleForm">
82 <el-form-item label="处理方法" prop="method" :rules="[
83 { required: true, message: '请选择', trigger: 'change' },
84 ]">
85 <el-select v-model="dealForm.method" filterable placeholder="请选择">
86 <el-option v-for="(item, index) in dealMethods" :key="index" :label="item.label" :value="item.value">
87 </el-option>
88 </el-select>
89 </el-form-item>
90 <el-form-item>
91 <el-button type="primary" @click="submitDealForm('dealForm')">确定</el-button>
92 <el-button @click="cancelDealForm('dealForm')">取消</el-button>
93 </el-form-item>
94 </el-form>
95 </div>
96 </div>
97 </template>
98 <script>
99 import geoUtils from "@components/lineTree/tx/js/geoUtils";
100 import featureUpdate from "@libs/map/featureUpdate";
101 // import { addjzd, addjzx } from "@/api/zd"
102 export default {
103 props: {
104 propertyInfo: {
105 type: Object,
106 default: null
107 },
108 geoInfo: {
109 type: Object,
110 default: null
111 },
112 timeLine: {
113 type: Number,
114 default: null
115 }
116 },
117 mixins: [geoUtils, featureUpdate],
118 data () {
119 return {
120 resultData: [],
121 resultDialog: false,
122 zdForm: {
123 zdBsm: ""
124 },
125 currentClickZd: null,
126 txtResult: [],
127 txtResultDialog: null,
128 txtZd: {
129 name: ""
130 },
131 overResults: [],//与导入宗地重叠的地块
132 currntDealGraphic: null,
133 dealMethods: [{
134 label: "不做处理",
135 value: "1"
136 }, {
137 label: "删除叠加部分",
138 value: "2"
139 }, {
140 label: "删除已重叠部分",
141 value: "3"
142 }, {
143 label: "删除原图形",
144 value: "4"
145 }],
146 dealDialog: false,
147 dealForm: {
148 method: ""
149 }
150 }
151 },
152 watch: {
153 timeLine (newValue, oldValue) {
154 this.resultDialog = false;
155 this.txtResultDialog = false;
156 this.dealDialog = false;
157 }
158 },
159 methods: {
160 txtFileChange (file, fileList) {
161 var self = this;
162 var fileReader = new FileReader();
163 fileReader.readAsText(file.raw);
164 fileReader.onload = function (res) {
165 var content = this.result;
166 if (!content || content.length == 0) {
167 self.$message.warning("文件内容为空!!!");
168 return;
169 }
170 self.analysisTextFile(content);
171 }
172 },
173 analysisTextFile (content) {
174 var index = content.indexOf("[地块坐标]"),
175 geoInfos = content.substr(index),
176 geoList = geoInfos.split("\n");
177 if (geoList.length < 1) {
178 this.$message.warning("文本内容格式有误,请效验文本内容格式!!!");
179 return;
180 }
181 //this.$emit("closeImportDialog");
182 var features = [], attributes = {}, points = [], j = 1;
183 for (var i = 1; i < geoList.length; i++) {
184 var rowData = geoList[i];
185 if ((rowData.indexOf("J") != -1 && rowData.indexOf("J") == 0) || (rowData.indexOf("j") != -1 && rowData.indexOf("j") == 0)) {
186 //解析坐标点信息
187 var pointInfo = rowData.split(",");
188 var point = [parseFloat(pointInfo[2]), parseFloat(pointInfo[3])];
189 points.push(point);
190 } else {
191 if (points.length > 0) {
192 var graphic = {
193 attributes: JSON.parse(JSON.stringify(attributes)),
194 geometry: {
195 rings: [points]
196 }
197 }
198 features.push(graphic);
199 }
200 //新建一个信息 坐标名称 类型
201 attributes = {};
202 points = []
203 var info = rowData.split(",");
204 if (info[3] || info[3] == 'null') {
205 attributes.name = '地块' + j;
206 j++
207 } else {
208 attributes.name = info[3];
209 }
210 }
211 }
212 if (points.length > 0) {
213 var graphic = {
214 attributes: JSON.parse(JSON.stringify(attributes)),
215 geometry: {
216 rings: [[points.concat()]]
217 }
218 }
219 features.push(graphic);
220 }
221 //新建一个信息 坐标名称 类型
222 attributes = {};
223 points = []
224 this.txtResult = features;
225 this.txtZd.name = "";
226 this.txtResultDialog = true;
227 },
228 shpFileSuccess (response, file, fileList) {
229 var self = this;
230 if (response.success) {
231 this.resultData = response.result;
232 this.resultDialog = true;
233 } else {
234 this.$message.warning(response.message);
235 }
236 },
237 cadFileSuccess (response, file, fileList) {
238
239 },
240 excelFileSuccess (response, file, fileList) {
241 var self = this;
242 if (response.success) {
243 var result = response.result;
244 var points = [];
245 for (var i = 0; i < result.length; i++) {
246 var point = [];
247 point[0] = parseFloat(result[i].x);
248 point[1] = parseFloat(result[i].y);
249 points.push(point);
250 }
251 var wkt = "PROJCS[\"XADFZBX\",GEOGCS[\"GCS_WGS_1984\",DATUM[\"D_WGS_1984\",SPHEROID[\"WGS_1984\",6378137.0,298.257223563]],PRIMEM[\"Greenwich\",0.0],UNIT[\"Degree\",0.0174532925199433]],PROJECTION[\"Transverse_Mercator\"],PARAMETER[\"False_Easting\",0.0],PARAMETER[\"False_Northing\",0.0],PARAMETER[\"Central_Meridian\",0.0],PARAMETER[\"Scale_Factor\",1.0],PARAMETER[\"Latitude_Of_Origin\",0.0],UNIT[\"Meter\",1.0]]";
252 var geometry = {
253 rings: [points],
254 spatialReference: {
255 wkt: wkt
256 },
257 type: "polygon"
258 }
259 var graphic = {
260 attributes: null,
261 geometry: geometry
262 }
263 self.checkGeo(graphic);
264 } else {
265 this.$message.warning(response.message);
266 }
267 },
268 //文本文档导入
269 submitTxtForm (formName) {
270 var self = this;
271 this.$refs[formName].validate((valid) => {
272 if (valid) {
273 var wkt = "PROJCS[\"XADFZBX\",GEOGCS[\"GCS_WGS_1984\",DATUM[\"D_WGS_1984\",SPHEROID[\"WGS_1984\",6378137.0,298.257223563]],PRIMEM[\"Greenwich\",0.0],UNIT[\"Degree\",0.0174532925199433]],PROJECTION[\"Transverse_Mercator\"],PARAMETER[\"False_Easting\",0.0],PARAMETER[\"False_Northing\",0.0],PARAMETER[\"Central_Meridian\",0.0],PARAMETER[\"Scale_Factor\",1.0],PARAMETER[\"Latitude_Of_Origin\",0.0],UNIT[\"Meter\",1.0]]";
274 var graphics = self.txtResult.filter(item => {
275 return item.attributes.name == self.txtZd.name;
276 })
277 var graphic = graphics[0];
278 graphic.geometry.type = "polygon";
279 graphic.geometry.spatialReference = {
280 wkt: wkt
281 }
282 self.checkGeo(graphic);
283 } else {
284 console.log('error submit!!');
285 return false;
286 }
287 })
288 },
289 txtChange (value) {
290 var wkt = "PROJCS[\"XADFZBX\",GEOGCS[\"GCS_WGS_1984\",DATUM[\"D_WGS_1984\",SPHEROID[\"WGS_1984\",6378137.0,298.257223563]],PRIMEM[\"Greenwich\",0.0],UNIT[\"Degree\",0.0174532925199433]],PROJECTION[\"Transverse_Mercator\"],PARAMETER[\"False_Easting\",0.0],PARAMETER[\"False_Northing\",0.0],PARAMETER[\"Central_Meridian\",0.0],PARAMETER[\"Scale_Factor\",1.0],PARAMETER[\"Latitude_Of_Origin\",0.0],UNIT[\"Meter\",1.0]]";
291 var graphics = this.txtResult.filter(item => {
292 return item.attributes.name == value;
293 })
294 var graphic = graphics[0];
295 graphic.geometry.type = "polygon";
296 graphic.geometry.spatialReference = {
297 wkt: wkt
298 }
299 this.addOverLayer(graphic.geometry, []);
300 },
301 //校验空间完整性
302 checkGeo (graphic) {
303 var self = this;
304 //校验完整性 直接调用空间方法 提交空间表
305 self.geoJoint(graphic.geometry, function (isJoint, message) {
306 if (isJoint) {
307 self.$message.warning(message)
308 return;
309 } else {
310 var type = self.propertyInfo.type;
311 if (type == 'zd') {
312 //重叠分析
313 self.zdOverAnalys(self.propertyInfo.zdbsm, graphic, function (flag, results) {
314 if (flag) {
315 self.$message.warning("导入的宗地与其他宗地有重叠,请处理!!");
316 self.dealOverData(results, graphic);
317 } else {
318 self.saveZd(graphic);
319 }
320 });
321 } else {
322 self.zrzOverAnalys(self.propertyInfo.bsm, graphic, function (flag, mes) {
323 if (flag) {
324 self.$message.warning(mes);
325 return;
326 } else {
327 self.saveZRZ(graphic);
328 }
329 });
330 }
331 }
332 });
333 },
334 //选择处理方式
335 submitDealForm (formName) {
336 var self = this;
337 this.$refs[formName].validate((valid) => {
338 if (valid) {
339 //选择处理方式
340 var value = self.dealForm.method;
341 self.currntDealGraphic.attributes = {};
342 switch (value) {
343 case '1': self.currntDealGraphic.attributes.BGZT = 1; self.saveZd(self.currntDealGraphic); break;
344 case "2": self.getDifference(self.currntDealGraphic, self.overResults, self.delOverGeo); break;
345 case "3": self.getResultsDif(self.overResults, self.currntDealGraphic, self.delOtherGeo, true); break;
346 case "4": self.getResultsDif(self.overResults, self.currntDealGraphic, self.delOtherGeo, false); break;
347 }
348 } else {
349 console.log('error submit!!');
350 return false;
351 }
352 })
353 },
354 //裁剪自己在保存
355 delOverGeo (geometry) {
356 if (!this.currntDealGraphic.attributes) {
357 this.currntDealGraphic.attributes = {};
358 }
359 this.currntDealGraphic.attributes.BGZT = 2;
360 if (geometry == null) {
361 this.$message.warning("完全重叠,已删除图形信息!!!")
362 this.currntDealGraphic.geometry = geometry;
363 }
364 this.saveZd(this.currntDealGraphic);
365 },
366 //裁剪别的在保存
367 delOtherGeo (results) {
368 //执行编辑操作
369 var layer = this.getLayerByName("ZDJBXX");
370 var featureUrl = layer.layerUrl.replace("MapServer", "FeatureServer");
371 featureUrl += "/" + layer.id;
372 this.updateGraphic(featureUrl, results);
373 this.saveZd(this.currntDealGraphic);
374 },
375 //下载文档模板
376 downloadFile (url, fileName) {
377 let link = document.createElement("a");
378 link.style.display = "none";
379 link.href = url;
380 link.setAttribute("download", fileName);
381 document.body.appendChild(link);
382 link.click();
383 document.body.removeChild(link);
384 },
385 //导入
386 submitForm (formName) {
387 //校验完整性 直接调用空间方法 提交空间表
388 var self = this;
389 this.$refs[formName].validate((valid) => {
390 if (valid) {
391 var geometry = self.parseWktToArc(self.currentClickZd.wkt);
392 geometry.type = "polygon";
393 var wkt = "PROJCS[\"XADFZBX\",GEOGCS[\"GCS_WGS_1984\",DATUM[\"D_WGS_1984\",SPHEROID[\"WGS_1984\",6378137.0,298.257223563]],PRIMEM[\"Greenwich\",0.0],UNIT[\"Degree\",0.0174532925199433]],PROJECTION[\"Transverse_Mercator\"],PARAMETER[\"False_Easting\",0.0],PARAMETER[\"False_Northing\",0.0],PARAMETER[\"Central_Meridian\",0.0],PARAMETER[\"Scale_Factor\",1.0],PARAMETER[\"Latitude_Of_Origin\",0.0],UNIT[\"Meter\",1.0]]";
394 geometry.spatialReference = {
395 wkt: wkt
396 }
397 var graphic = {
398 attributes: self.currentClickZd,
399 geometry: geometry
400 }
401 self.checkGeo(graphic);
402 } else {
403 console.log('error submit!!');
404 return false;
405 }
406 });
407 },
408 dealOverData (results, graphic) {
409 this.overResults = results;
410 this.currntDealGraphic = graphic;
411 this.resultDialog = false;
412 this.txtResultDialog = false;
413 this.dealDialog = true;
414 },
415 saveZd (graphic) {
416 var self = this;
417 var points = null, lines = null,
418 layer = self.getLayerByName("ZDJBXX");
419 var featureUrl = layer.layerUrl.replace("MapServer", "FeatureServer");
420 featureUrl += "/" + layer.id;
421 if (self.geoInfo) {
422 //替换 生成图像 高亮
423 if (graphic.attributes && graphic.attributes.BGZT) {
424 self.geoInfo.attributes.BGZT = graphic.attributes.BGZT;
425 }
426 self.geoInfo.attributes.BSM = this.propertyInfo.zdbsm;
427 self.geoInfo.attributes.ZDDM = this.propertyInfo.zddm;
428 self.geoInfo.attributes.XMMC = this.propertyInfo.mc;
429 graphic.attributes = self.geoInfo.attributes;
430 self.updateGraphic(featureUrl, graphic, function (res) {
431 //保存成功之后生成界址点 界址线
432 //生成坐标点
433 //跳转至map界面updateResults
434 var updResult = res.updateFeatureResults[0];
435 if (updResult.objectId) {
436 var OBJECTID = updResult.objectId;
437 if (graphic.geometry) {
438 points = self.craetJZPoint(graphic);
439 self.savejzd(points)
440 //生成边框线
441 self.createJZLine(graphic, function (res) {
442 lines = res;
443 self.saveJzx(lines);
444 });
445 }
446 self.$message.success("保存成功!!!");
447 self.goMap();
448 }
449 });
450 } else {
451 //生成图像 保存
452 var attributes = {
453 BSM: this.propertyInfo.zdbsm,
454 ZDDM: this.propertyInfo.zddm,
455 XMMC: this.propertyInfo.mc
456 };
457 if (graphic.attributes && graphic.attributes.BGZT) {
458 attributes.BGZT = graphic.attributes.BGZT;
459 }
460 graphic.attributes = attributes;
461 self.addGraphic(featureUrl, graphic, function (res) {
462 var addRresult = res.addFeatureResults[0];
463 if (addRresult.objectId) {
464 var OBJECTID = addRresult.objectId;
465 if (graphic.geometry) {
466 points = self.craetJZPoint(graphic);
467 self.savejzd(points)
468 //生成边框线
469 self.createJZLine(graphic, function (res) {
470 lines = res;
471 self.saveJzx(lines);
472 });
473 }
474 self.$message.success("保存成功!!!");
475 self.goMap();
476 }
477 });
478 }
479 },
480 savejzd (points) {
481 var savePoints = []
482 for (var i = 0; i < points.length; i++) {
483 var obj = {
484 glbsm: this.propertyInfo.zdbsm,
485 jzdh: points[i].jzdh,
486 sxh: points[i].sxh,
487 xzbz: points[i].x,
488 yzbz: points[i].y,
489 jblx: "",
490 jzdlx: ""
491 }
492 savePoints.push(obj);
493 }
494 //保存矢量数据表
495 // addjzd(savePoints).then(res => {
496 // if (res.succcess) {
497 // console.log("界址点保存成成功!!!");
498 // }
499 // });
500 //保存空间数据
501
502 },
503 saveJzx (lines) {
504 var jzxLines = [];
505 for (var i = 0; i < lines.length; i++) {
506 var obj = {
507 glbsm: this.propertyInfo.zdbsm,
508 qsd: lines[i].startPoint,
509 zzd: lines[i].endPoint,
510 jzjj: lines[i].distance,
511 qdh: lines[i].qdh,
512 zdh: lines[i].zdh,
513 jzxlx: "",
514 jzxwz: "",
515 jxxz: "",
516 sm: ""
517 }
518 jzxLines.push(obj);
519 }
520 //保存矢量数据表
521 // addjzx(jzxLines).then(res => {
522 // if (res.success) {
523 // //触发查询界址线
524 // console.log("界址线保存成功!!!!!");
525 // }
526 // });
527 //保存空间数据表
528 },
529 saveZRZ (graphic) {
530 var self = this;
531 var layer = null;
532 layer = self.getLayerByName("ZRZ");
533 var featureUrl = layer.layerUrl.replace("MapServer", "FeatureServer");
534 featureUrl += "/" + layer.id;
535 if (self.geoInfo) {
536 self.geoInfo.BSM = self.propertyInfo.bsm;
537 graphic.attributes = self.geoInfo.attributes;
538 //替换 生成图像 高亮
539 self.updateGraphic(featureUrl, graphic, function (res) {
540 var addRresult = res.updateFeatureResults[0];
541 if (addRresult.objectId) {
542 self.$message.success("保存成功!!!");
543 self.goMap();
544 }
545 });
546 } else {
547 var attributes = {
548 BSM: this.propertyInfo.bsm,
549 XMMC: this.propertyInfo.xmmc
550 }
551 graphic.attributes = attributes;
552 //生成图像 保存
553 self.addGraphic(featureUrl, graphic, function (res) {
554 var addRresult = res.addFeatureResults[0];
555 if (addRresult.objectId) {
556 self.$message.success("保存成功!!!");
557 self.goMap();
558 }
559 });
560 }
561 },
562 //操作成功不需要跳转地图 (直接定位新导入的图形)
563 goMap () {
564 var bsm = "", type = this.propertyInfo.type;
565 if (type == "zd") {
566 bsm = this.propertyInfo.zdbsm;
567 } else {
568 bsm = this.propertyInfo.bsm;
569 }
570 this.resultDialog = false;
571 this.txtResultDialog = false;
572 this.dealDialog = false;
573 this.$emit("closeImportDialog");
574 //TODO 定位当前新导入的图形
575 this.addGeoByBsm(bsm, type, "testMap");
576 },
577 //取消
578 cancel () {
579 this.zdForm.zdBsm = "";
580 this.currentClickZd = null;
581 this.resultDialog = false;
582 // 清空当前图层上显示的图形
583 this.clearOverLayer();
584 },
585 //取消文本选择的弹出框
586 cancelTxtForm () {
587 this.txtZd.name = "";
588 this.txtResultDialog = false;
589 // 清空当前图层上显示的图形
590 this.clearOverLayer();
591 },
592 //取消导入处理的结果
593 cancelDealForm () {
594 this.dealForm.method = "";
595 this.dealDialog = false;
596 this.overResults = [];
597 // 清空当前图层上显示的图形
598 this.clearOverLayer();
599 },
600 //宗地选择发生改变
601 zdChange (value) {
602 this.zdForm.zdBsm = value.XMMC;
603 this.currentClickZd = value;
604 var geometry = this.parseWktToArc(this.currentClickZd.wkt);
605 geometry.type = "polygon";
606 var wkt = "PROJCS[\"XADFZBX\",GEOGCS[\"GCS_WGS_1984\",DATUM[\"D_WGS_1984\",SPHEROID[\"WGS_1984\",6378137.0,298.257223563]],PRIMEM[\"Greenwich\",0.0],UNIT[\"Degree\",0.0174532925199433]],PROJECTION[\"Transverse_Mercator\"],PARAMETER[\"False_Easting\",0.0],PARAMETER[\"False_Northing\",0.0],PARAMETER[\"Central_Meridian\",0.0],PARAMETER[\"Scale_Factor\",1.0],PARAMETER[\"Latitude_Of_Origin\",0.0],UNIT[\"Meter\",1.0]]";
607 geometry.spatialReference = {
608 wkt: wkt
609 }
610 this.addOverLayer(geometry, []);
611 }
612 }
613 }
614 </script>
615 <style scoped lang="scss">
616 .importDiv {
617 display: flex;
618 justify-content: center;
619 align-content: center;
620
621 li {
622 margin: 5px;
623 width: 50%;
624
625 .title {
626 line-height: 1;
627 margin-top: -57px;
628 font-size: 14px;
629 }
630
631 .templateDowload {
632 line-height: 1;
633 margin-top: 7px;
634
635 a {
636 color: #409eff;
637 }
638 }
639 }
640 }
641
642 /deep/ .avatar-uploader .el-upload {
643 border: 1px dashed #d9d9d9;
644 border-radius: 6px;
645 cursor: pointer;
646 position: relative;
647 overflow: hidden;
648 width: 100%;
649 height: 178px;
650 line-height: 178px;
651 }
652
653 /deep/ .avatar-uploader .el-upload:hover {
654 border-color: #409EFF;
655 }
656
657 /deep/ .iconfont {
658 font-size: 20px;
659 color: #8c939d;
660 width: 100%;
661 text-align: center;
662 }
663 </style>
...\ No newline at end of file ...\ No newline at end of file
1 
2 export default {
3 methods:{
4 downloadTxt(text, fileName){
5 let element = document.createElement('a')
6 element.setAttribute('href', 'data:text/plain;charset=utf-8,' + encodeURIComponent(text))
7 element.setAttribute('download', fileName)
8 element.style.display = 'none'
9 element.click()
10 },
11 createTextContent(jzdInfo){
12 var textContent = "";
13 for(var i = 0;i < jzdInfo.length;i++){
14 textContent += jzdInfo[i].jzdh +","+jzdInfo[i].sxh+"," +
15 jzdInfo[i].x+","+jzdInfo[i].y+"\n"
16 }
17 return textContent;
18 },
19
20 }
21 }
...\ No newline at end of file ...\ No newline at end of file
1 /*
2 * 图形相关的操作 js
3 * */
4
5 import layers from '@/api/json/layers.json'
6 import queryUtils from "@/utils/map/queryUtils";
7 import identifyUtils from '@/utils/map/IdentifyUtils'
8 import { loadModules } from "esri-loader"
9 import featureUpdate from "@/utils/map/featureUpdate";
10 import arcgisParser from 'terraformer-arcgis-parser'
11 import wktParse from 'terraformer-wkt-parser'
12 import { maps } from '@/utils/map/mapUtils'
13 import graphicSymbol from '@/api/json/graphicSymbol.json'
14
15 export default {
16 data () {
17 return {
18
19 }
20 },
21 methods: {
22 getLayerByName (name) {
23 for (var i = 0; i < layers.length; i++) {
24 if (layers[i].layerName == name) {
25 return layers[i];
26 }
27 }
28 return null;
29 },
30 queryGeoByBsm (bsm, type, callBackFunction, outSpatialReference) {
31 var layer = null;
32 if (type == 'zd') {
33 layer = this.getLayerByName("ZDJBXX");
34 } else if (type == 'zrz') {
35 layer = this.getLayerByName("ZRZ");
36 } else {
37 console.log("未定义类型!!");
38 return;
39 }
40 if (!layer) {
41 console.log("没有找到图层,不能查询");
42 return;
43 }
44 queryUtils.methods.queryByWhere(layer.layerUrl + "/" + layer.id, { "BSM": bsm }, null, true, null, outSpatialReference, function (res) {
45 var features = res.features;
46 if (callBackFunction && typeof callBackFunction == 'function') {
47 callBackFunction(features);
48 }
49 });
50 },
51 //生成介质点
52 craetJZPoint (graphic) {
53 var geomtry = graphic.geometry, rings = geomtry.rings[0];
54 var pointInfos = [];
55 this.getPointByRings(rings, pointInfos);
56 return pointInfos;
57 },
58 getPointByRings (rings, pointInfos) {
59 for (var i = 0; i < rings.length; i++) {
60 var children = rings[i];
61 if (children.length == 2 && typeof children[0] == 'number') {
62 var obj = {};
63 obj.jzdh = "j" + pointInfos.length;
64 obj.sxh = pointInfos.length;
65 obj.x = children[0];
66 obj.y = children[1];
67 pointInfos.push(obj);
68 } else {
69 this.getPointByRings(children, pointInfos);
70 }
71 }
72 },
73 //生成介质线
74 createJZLine (graphic, callBackFunction) {
75 var self = this;
76 loadModules([
77 "esri/geometry/support/geodesicUtils",
78 "esri/geometry/Point",
79 "esri/geometry/Polyline"
80
81 ]).then(([
82 geodesicUtils,
83 Point,
84 Polyline
85 ]) => {
86 //取得各个坐标点 然后生成外围坐标线
87 var geometry = graphic.geometry,
88 rings = geometry.rings,
89 points = [];
90 if (rings.length > 0) {
91 for (var i = 0; i < rings.length; i++) {
92 var danPoints = [];
93 self.getPointByRings(rings[i], danPoints);
94 points.push(danPoints);
95 }
96 } else {
97 var danPoints = [];
98 self.getPointByRings(rings, danPoints);
99 points.push(danPoints);
100 }
101 var lines = [];
102 //meters
103 for (var i = 0; i < points.length; i++) {
104 for (var j = 0; j < points[i].length; j++) {
105 if (j < (points[i].length - 1)) {
106 const join = geodesicUtils.geodesicDistance(
107 new Point({ x: points[i][j].x, y: points[i][j].y }),
108 new Point({ x: points[i][j + 1].x, y: points[i][j + 1].y }),
109 "meters"
110 );
111 const { distance, azimuth } = join;
112
113 var obj = {
114 startPoint: points[i][j].x + "," + points[i][j].y,
115 endPoint: points[i][j + 1].x + "," + points[i][j + 1].y,
116 qdh: points[i][j].sxh,
117 zdh: points[i][j + 1].sxh,
118 distance: distance,
119 jzxlx: "",
120 jzxwz: "",
121 jzxxz: "",
122 remark: ""
123 }
124 lines.push(obj);
125 } else {
126 const join = geodesicUtils.geodesicDistance(
127 new Point({ x: points[i][j].x, y: points[i][j].y }),
128 new Point({ x: points[i][0].x, y: points[i][0].y }),
129 "meters"
130 );
131 const { distance, azimuth } = join;
132 var obj = {
133 startPoint: points[i][j].x + "," + points[i][j].y,
134 endPoint: points[i][0].x + "," + points[i][0].y,
135 qdh: points[i][j].sxh,
136 zdh: points[i][0].sxh,
137 distance: distance,
138 jzxlx: "",
139 jzxwz: "",
140 jzxxz: "",
141 remark: ""
142 }
143 lines.push(obj);
144 }
145 }
146 }
147 if (callBackFunction && typeof callBackFunction == "function") {
148 callBackFunction(lines);
149 }
150 }).catch(err => {
151 throw (err);
152 })
153 },
154 //wkt转换成arcgis
155 parseWktToArc (wkt) {
156 var primitive = wktParse.parse(wkt);
157 /*if(primitive.type == "MultiPolygon"){
158 primitive.type = "Polygon"
159 }*/
160 return arcgisParser.convert(primitive)
161 },
162 postionToThisGeo (bsm, type) {
163 var view = maps["testMap"];
164 var layer = view.map.findLayerById("highlightLayer");
165 if (layer) {
166 var graphics = layer.graphics;
167 if (graphics.length > 0 && graphics.items[0].attributes.BSM == bsm) {
168 // view.extent = graphics.items[0].geometry.extent;
169 view.center = graphics.items[0].geometry.extent.center;
170 view.zoom = 15;
171 }
172 } else {
173 this.$message.success("暂无图形信息!!!");
174 }
175 },
176 //导入空间图形是 先判断数据是否跨界
177 geoJoint (geometry, callBacFunction) {
178 var self = this;
179 loadModules([
180 "esri/geometry/geometryEngine",
181 "esri/geometry/Polygon"
182 ]).then(([
183 geometryEngine,
184 Polygon
185 ]) => {
186 var djqLayer = null, djzqLayer = null, xjzqLayer = null;
187 djqLayer = self.getLayerByName("DJQ");
188 djzqLayer = self.getLayerByName("DJZQ");
189 xjzqLayer = self.getLayerByName("XJZQ");
190 var layerIds = [];
191 layerIds.push(djqLayer.id);
192 layerIds.push(djzqLayer.id);
193 layerIds.push(xjzqLayer.id);
194 var polygon = new Polygon(geometry);
195 identifyUtils.methods.identify(djqLayer.layerUrl, layerIds, polygon, function (res) {
196 var results = res.results;
197 var isJoint = false, layerName = "", message = "";
198 if (!results || results.length == 0) {
199 callBacFunction(true, "不在行政区内,请检查空间位置信息!!!");
200 }
201 for (var i = 0; i < results.length; i++) {
202 var feature = results[i].feature;
203 var flag = geometryEngine.intersects(polygon, feature.geometry);
204 var withinFlag = geometryEngine.within(polygon, feature.geometry);
205 if (!withinFlag && flag) {
206 isJoint = true;
207 layerName = results[i].layerName;
208 switch (layerName) {
209 case 'DJQ': message = "地块跨越地籍区,数据不合法!!!"; break;
210 case 'DJZQ': message = "地块跨越地籍子区,数据不合法!!!"; break;
211 case 'XJZQ': message = "地块跨越行政区,数据不合法!!!"; break;
212 }
213 break
214 }
215 }
216 if (callBacFunction && typeof callBacFunction == "function") {
217 callBacFunction(isJoint, message);
218 }
219 }, true)
220 }).catch(err => {
221 console.log(err);
222 throw (err);
223 })
224 },
225 //保存或者编辑属性信息
226 updAttributes (bsm, type, attributes, callBackFunction, ydybsm) {
227 var layer = null;
228 if (type == 'zd') {
229 layer = this.getLayerByName("ZDJBXX");
230 } else {
231 layer = this.getLayerByName("ZRZ");
232 }
233 var featureUrl = layer.layerUrl.replace("MapServer", "FeatureServer");
234 featureUrl += "/" + layer.id;
235 this.queryGeoByBsm(ydybsm ? ydybsm : bsm, type, function (features) {
236 if (features && features.length > 0) {
237 attributes.OBJECTID = features[0].attributes.OBJECTID;
238 features[0].attributes = attributes;
239 /* var wkt = "PROJCS[\"XADFZBX\",GEOGCS[\"GCS_WGS_1984\",DATUM[\"D_WGS_1984\",SPHEROID[\"WGS_1984\",6378137.0,298.257223563]],PRIMEM[\"Greenwich\",0.0],UNIT[\"Degree\",0.0174532925199433]],PROJECTION[\"Transverse_Mercator\"],PARAMETER[\"False_Easting\",0.0],PARAMETER[\"False_Northing\",0.0],PARAMETER[\"Central_Meridian\",0.0],PARAMETER[\"Scale_Factor\",1.0],PARAMETER[\"Latitude_Of_Origin\",0.0],UNIT[\"Meter\",1.0]]";
240 features[0].geometry.spatialReference = {
241 wkt:wkt
242 }*/
243 if (ydybsm) {
244 features[0].attributes.BSM = ydybsm;
245 }
246 featureUpdate.methods.updateGraphic(featureUrl, features[0], callBackFunction);
247 } else {
248 var graphic = {
249 attributes: attributes
250 }
251 featureUpdate.methods.addGraphic(featureUrl, graphic, callBackFunction);
252 }
253 });
254 },
255 //叠加分析 同一个图层的叠加分析
256 zdOverAnalys (bsm, graphic, callBacFunction) {
257 var self = this;
258 loadModules([
259 "esri/geometry/Polygon"
260 ]).then(([
261 Polygon
262 ]) => {
263 var zdLayer = null;
264 zdLayer = self.getLayerByName("ZDJBXX");
265 var layerIds = [];
266 layerIds.push(zdLayer.id);
267 var polygon = new Polygon(graphic.geometry);
268 identifyUtils.methods.identify(zdLayer.layerUrl, layerIds, polygon, function (res) {
269 var results = res.results;
270 //判断数据是否与其他数据有重叠
271 var flag = false;
272 if (results && results.length > 0) {
273 flag = true;
274 //加载在图层上 原本的要导入的数据 和重叠数据
275 self.addOverLayer(polygon, results);
276 }
277 callBacFunction(flag, results);
278 }, true)
279 }).catch(err => {
280 console.log(err);
281 throw (err);
282 })
283 },
284 //添加添加元素和覆盖的元素到地图上
285 addOverLayer (geometry, results) {
286 var view = maps["testMap"];
287 loadModules([
288 "esri/Graphic",
289 "esri/geometry/Polygon",
290 "esri/layers/GraphicsLayer",
291 "esri/geometry/geometryEngineAsync",
292 "esri/geometry/Extent"
293 ]).then(([
294 Graphic,
295 Polygon,
296 GraphicsLayer,
297 geometryEngineAsync,
298 Extent
299 ]) => {
300 var graphic = new Graphic({
301 geometry: geometry
302 })
303 var layer = view.map.findLayerById("overLayer");
304 if (layer) {
305 layer.removeAll();
306 } else {
307 layer = new GraphicsLayer({
308 id: "overLayer"
309 })
310 view.map.add(layer);
311 }
312 var impotSymbol = graphicSymbol.fillSymbol.importSymbol,
313 defaultSymbol = graphicSymbol.fillSymbol.defaultSymbol;
314 for (var i = 0; i < results.length; i++) {
315 var feature = results[i].feature;
316 feature.symbol = defaultSymbol;
317 layer.add(feature);
318 var geo = geometryEngineAsync.intersect(feature.geometry, geometry);
319 geo.then(function (res) {
320 var interGra = new Graphic({
321 geometry: res,
322 symbol: graphicSymbol.fillSymbol.highlightSymbol
323 })
324 layer.add(interGra);
325 })
326 }
327 graphic.symbol = impotSymbol
328 layer.add(graphic);
329 var extent = new Extent(JSON.parse(JSON.stringify(graphic.geometry.extent)))
330 extent.spatialReference = view.spatialReference;
331 // view.extent = extent;
332 view.center = extent.center;
333 view.zoom = 15;
334 }).catch(err => {
335 console.log(err);
336
337 })
338 },
339 clearOverLayer () {
340 var view = maps["testMap"];
341 var layer = view.map.findLayerById("overLayer");
342 if (layer) {
343 layer.removeAll();
344 }
345 },
346 //自然幢叠加分析 不能跨宗地 图层本身的叠加分析
347 zrzOverAnalys (bsm, graphic, callBacFunction) {
348 var self = this;
349 loadModules([
350 "esri/geometry/Polygon",
351 "esri/geometry/geometryEngine"
352 ]).then(([
353 Polygon,
354 geometryEngine
355 ]) => {
356 var polygon = new Polygon(graphic.geometry);
357 var zdLayer = null,
358 zrzLayer = null;
359 zdLayer = self.getLayerByName("ZDJBXX");
360 zrzLayer = self.getLayerByName("ZRZ");
361 var layerIds = [];
362 layerIds.push(zdLayer.id);
363 layerIds.push(zrzLayer.id);
364 identifyUtils.methods.identify(zdLayer.layerUrl, layerIds, polygon, function (res) {
365 var results = res.results;
366 //判断数据是否与其他数据有重叠
367 var flag = false,
368 mesge = "";
369 if (results && results.length > 0) {
370 for (var i = 0; i < results.length; i++) {
371 var feature = results[i].feature,
372 layerName = results[i].layerName;
373 if (layerName == 'ZRZ') {
374 if (!feature.attributes['标识码'] || feature.attributes['标识码'] != bsm) {
375 var interFlag = geometryEngine.intersects(polygon, feature.geometry);
376 if (interFlag) {
377 flag = true;
378 mesge = "导入的自然幢与其他自然幢重叠,不能导入!!!";
379 break;
380 }
381 }
382 } else if (layerName == 'ZDJBXX') {
383 var interFlag = geometryEngine.intersects(polygon, feature.geometry);
384 var withinFlag = geometryEngine.within(polygon, feature.geometry);
385 if (!withinFlag && interFlag) {
386 flag = true;
387 mesge = "导入的自然幢与其跨宗地,不能导入!!!";
388 break;
389 }
390 }
391 }
392 }
393 callBacFunction(flag, mesge);
394 }, true)
395 }).catch(err => {
396 console.log(err);
397 })
398 },
399 //去除重叠部分
400 getDifference (inputGraphic, subGraphic, callBackFuncton) {
401 loadModules([
402 "esri/geometry/Polygon",
403 "esri/geometry/geometryEngine",
404 "esri/Graphic"
405 ]).then(([
406 Polygon,
407 geometryEngine,
408 Graphic
409 ]) => {
410 var inputGeometry = new Polygon(inputGraphic.geometry);
411 var outGeometry = null;
412 for (var i = 0; i < subGraphic.length; i++) {
413 var feature = subGraphic[i].feature;
414 outGeometry = geometryEngine.difference(inputGeometry, feature.geometry);
415 }
416 if (callBackFuncton && typeof callBackFuncton == 'function') {
417 callBackFuncton(outGeometry);
418 }
419 }).catch(err => {
420 console.log(err);
421 })
422 },
423 //业务处理 先用query方法 查询将所有属性查询 在做空间裁剪
424 getResultsDif (subGraphics, currntGraphic, callBackFunction, flag) {
425 var self = this;
426 loadModules([
427 "esri/geometry/geometryEngine",
428 "esri/geometry/Polygon"
429 ]).then(([
430 geometryEngine,
431 Polygon
432 ]) => {
433 var objectIds = [];
434 subGraphics.filter(item => {
435 objectIds.push(item.feature.attributes.OBJECTID);
436 })
437 var inputGeometry = new Polygon(currntGraphic.geometry);
438 var zdLayer = self.getLayerByName("ZDJBXX");
439 queryUtils.methods.queryByWhere(zdLayer.layerUrl + "/" + zdLayer.id, { OBJECTID: objectIds }, null, true, "", subGraphics[0].feature.geometry.spatialReference, function (result) {
440 var features = result.features;
441 if (flag) {
442 for (var i = 0; i < features.length; i++) {
443 features[i].geometry = geometryEngine.difference(features[i].geometry, inputGeometry);
444 features[i].attributes.BGZT = 3;
445 }
446 } else {
447 for (var i = 0; i < features.length; i++) {
448 features[i].geometry = null;
449 features[i].attributes.BGZT = 4;
450 }
451 }
452 if (callBackFunction && typeof callBackFunction == 'function') {
453 callBackFunction(features);
454 }
455 })
456
457 }).catch(err => {
458 console.log(err);
459 })
460
461 },
462 addGeoByBsm (bsm, type, viewId) {
463 var self = this;
464 var layer = null;
465 if (type == 'zd') {
466 layer = this.getLayerByName("ZDJBXX");
467 } else if (type == 'zrz') {
468 layer = this.getLayerByName("ZRZ");
469 } else {
470 console.log("未定义类型!!");
471 return;
472 }
473 if (!layer) {
474 console.log("没有找到图层,不能查询");
475 return;
476 }
477 queryUtils.methods.queryByWhere(layer.layerUrl + "/" + layer.id, { "BSM": bsm }, null, true, null, null, function (res) {
478 var features = res.features;
479 if (features && features.length > 0) {
480 if (!features[0].geometry || features[0].geometry.rings.length == 0) {
481 self.$message.success("暂无图形信息!!");
482 return;
483 }
484 loadModules([
485 "esri/layers/GraphicsLayer"
486 ]).then(([
487 GraphicsLayer
488 ]) => {
489 var view = maps[viewId];
490 var layer = view.map.findLayerById("highlightLayer");
491 if (layer) {
492 layer.removeAll();
493 } else {
494 layer = new GraphicsLayer({
495 id: "highlightLayer"
496 })
497 view.map.add(layer, 5);
498 }
499 var symbol = graphicSymbol.fillSymbol.highlightSymbol;
500 var graphic = features[0];
501 graphic.symbol = symbol;
502 layer.add(graphic);
503 // view.extent = graphic.geometry.extent;
504 view.center = graphic.geometry.extent.center;
505 view.zoom = 15;
506 }).catch(err => {
507 thow(err);
508 })
509 } else {
510 self.$message.success("暂无图形信息!!");
511 return;
512 }
513 });
514 },
515 //清空当前图层
516 clearHighlightLayer (viewId) {
517 var view = maps[viewId];
518 var layer = view.map.findLayerById("highlightLayer");
519 if (layer) {
520 layer.removeAll();
521 }
522 }
523 }
524 }
...\ No newline at end of file ...\ No newline at end of file
1 <!-- 1 <!--
2 * @Description: 2 * @Description:
3 * @Autor: renchao 3 * @Autor: renchao
4 * @LastEditTime: 2023-07-04 16:07:37 4 * @LastEditTime: 2023-07-04 16:07:37
5 --> 5 -->
...@@ -26,11 +26,11 @@ ...@@ -26,11 +26,11 @@
26 <el-upload class="fileUpdate" ref="upload" action="" :show-file-list="false" :multiple="true" :auto-upload="false" 26 <el-upload class="fileUpdate" ref="upload" action="" :show-file-list="false" :multiple="true" :auto-upload="false"
27 :on-change="handleChange" 27 :on-change="handleChange"
28 accept=".JPG, .PNG, .JPEG,.jpg, .png, .jpeg" :before-upload="beforeUpload"> 28 accept=".JPG, .PNG, .JPEG,.jpg, .png, .jpeg" :before-upload="beforeUpload">
29 <el-button icon="el-icon-upload" type="primary" v-if="!this.$route.query.viewtype && ableOperation">上传</el-button> 29 <el-button icon="el-icon-upload" type="primary" v-if="ableOperation">上传</el-button>
30 </el-upload> 30 </el-upload>
31 <el-button type="primary" icon="el-icon-delete-solid" @click="handleDelete" 31 <el-button type="primary" icon="el-icon-delete-solid" @click="handleDelete"
32 v-if="!this.$route.query.viewtype && thumbnailImages.length>0 && ableOperation">删除</el-button> 32 v-if="thumbnailImages.length>0 && ableOperation">删除</el-button>
33 <div v-if="!this.$route.query.viewtype" class="pl-5"> 33 <div v-if="ableOperation" class="pl-5">
34 <el-button type="primary" @click="handleOpenScan" v-if="ableOperation">{{scanTitle}}</el-button> 34 <el-button type="primary" @click="handleOpenScan" v-if="ableOperation">{{scanTitle}}</el-button>
35 <el-button type="primary" @click="handleViewScan" v-if="isScan && ableOperation">拍照</el-button> 35 <el-button type="primary" @click="handleViewScan" v-if="isScan && ableOperation">拍照</el-button>
36 </div> 36 </div>
......
1 <!--
2 * @Description:
3 * @Autor: renchao
4 * @LastEditTime: 2023-05-17 10:41:09
5 -->
6 <template>
7 <div>
8 <lb-table :column="column" border :maxHeight="300" heightNumSetting :pagination="false" :key="key" :data="tableDataList">
9 </lb-table>
10 <addJtcy v-model="dialog" :details="details" @updateDetail="updateDetail" />
11 </div>
12 </template>
13 <script>
14 import addJtcy from './addJtcy.vue'
15 import { mapGetters } from 'vuex'
16 export default {
17 components: {
18 addJtcy
19 },
20 computed: {
21 ...mapGetters(["dictData"]),
22 },
23 props: {
24 tableData: {
25 type: Array,
26 default: function () {
27 return []
28 }
29 },
30 gyfs: {
31 type: String,
32 default: '1'
33 }
34 },
35 data () {
36 return {
37 key: 0,
38 dataIndex: 0,
39 dialog: false,
40 details: {},
41 tableDataList: [],
42 qlrCommonTable: [
43 {
44 width: '50',
45 renderHeader: (h, scope) => {
46 return <div> {
47 this.$route.query.viewtype == 1 ? '序号' : <i class="el-icon-plus pointer" onClick={() => { this.addClick() }}></i>
48 }
49 </div>
50 },
51 render: (h, scope) => {
52 return (
53 <div>
54 {
55 this.$route.query.viewtype == 1 ? <span>{scope.$index + 1}</span> :
56 <i class="el-icon-minus pointer" onClick={() => { this.deleClick(scope.$index, scope.row) }}></i>
57 }
58 </div>
59 )
60 }
61 },
62 {
63 label: '身份证读卡器',
64 align: 'center',
65 render: (h, scope) => {
66 return <el-button type="text" icon="el-icon-tickets" onClick={() => { this.readClick(scope) }}>读取</el-button>
67 }
68 },
69 {
70 prop: "cyxm",
71 label: "成员姓名"
72 },
73 {
74 prop: "sfzhm",
75 label: "身份证号码"
76 },
77 {
78 prop: "dh",
79 label: "联系电话"
80 },
81 {
82 label: '修改',
83 render: (h, scope) => {
84 return (
85 <div>
86 {
87 this.$route.query.viewtype == 1 ? <el-button
88 icon="el-icon-view"
89 type="text"
90 onClick={() => { this.queryViewClick(scope.$index, scope.row) }}>查看</el-button> : <el-button
91 icon="el-icon-edit-outline"
92 type="text"
93 onClick={() => { this.editClick(scope.$index, scope.row) }}>编辑</el-button>
94 }
95 </div>
96 )
97 }
98 }
99 ],
100 column: this.qlrCommonTable
101 }
102 },
103 watch: {
104 tableData: {
105 handler: function (val, oldVal) {
106 let that = this
107 if (val.length == 0 || !val) {
108 that.tableDataList = _.cloneDeep([{
109 sqrmc: '',
110 dlrzjlx: '',
111 dlrzjh: '',
112 fr: ''
113 }])
114 } else {
115 that.tableDataList = _.cloneDeep(val)
116 }
117 },
118 immediate: true,
119 deep: true
120 },
121 gyfs: {
122 handler (newVal, oldValue) {
123 let dataList = _.cloneDeep(this.qlrCommonTable)
124 if (newVal == '1') {
125 this.column = _.cloneDeep(dataList).slice(1, dataList.length)
126 } else {
127 this.column = dataList
128 }
129 },
130 immediate: true
131 }
132 },
133 methods: {
134 updateDetail (value) {
135 this.tableDataList[this.dataIndex] = value
136 this.key++
137 this.$emit('upDateJtcyList', this.tableDataList)
138 },
139
140 // 新增
141 addClick () {
142 this.dialog = true
143 },
144
145 // 删除
146 deleClick (index, row) {
147 this.tableData.splice(index, 1)
148 },
149
150 // 身份证读取
151 readClick () { },
152
153 // 修改
154 editClick (index, row) {
155 console.log(row, 'rowrowrowrowrow');
156 this.dataIndex = index
157 this.dialog = true
158 this.details = row
159 },
160
161 queryViewClick () {
162 this.dialog = true
163 }
164 }
165 }
166 </script>
167 <style scoped lang='scss'>
168 </style>
...\ No newline at end of file ...\ No newline at end of file
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 v-show="!isLoading" ref="processCanvas" class="process-canvas" style="height: 280px;" />
10 <!-- 自定义箭头样式,用于成功状态下流程连线箭头 -->
11 <defs ref="customSuccessDefs">
12 <marker id="sequenceflow-end-white-success" view-box="0 0 20 20" ref-x="11" ref-y="10" marker-width="10"
13 marker-height="10" orient="auto">
14 <path class="success-arrow" d="M 1 5 L 11 10 L 1 15 Z"
15 style="stroke-width: 1px; stroke-linecap: round; stroke-dasharray: 10000, 1;" />
16 </marker>
17 <marker id="conditional-flow-marker-white-success" view-box="0 0 20 20" ref-x="-1" ref-y="10" marker-width="10"
18 marker-height="10" orient="auto">
19 <path class="success-conditional" d="M 0 10 L 8 6 L 16 10 L 8 14 Z"
20 style="stroke-width: 1px; stroke-linecap: round; stroke-dasharray: 10000, 1;" />
21 </marker>
22 </defs>
23 <!-- 自定义箭头样式,用于失败状态下流程连线箭头 -->
24 <defs ref="customFailDefs">
25 <marker id="sequenceflow-end-white-fail" view-box="0 0 20 20" ref-x="11" ref-y="10" marker-width="10"
26 marker-height="10" orient="auto">
27 <path class="fail-arrow" d="M 1 5 L 11 10 L 1 15 Z"
28 style="stroke-width: 1px; stroke-linecap: round; stroke-dasharray: 10000, 1;" />
29 </marker>
30 <marker id="conditional-flow-marker-white-fail" view-box="0 0 20 20" ref-x="-1" ref-y="10" marker-width="10"
31 marker-height="10" orient="auto">
32 <path class="fail-conditional" d="M 0 10 L 8 6 L 16 10 L 8 14 Z"
33 style="stroke-width: 1px; stroke-linecap: round; stroke-dasharray: 10000, 1;" />
34 </marker>
35 </defs>
36
37 <div style="position: absolute; top: 0px; left: 0px; width: 100%;">
38 <el-row type="flex" justify="end">
39 <el-button-group key="scale-control" size="medium">
40 <el-button size="medium" type="default" :plain="true" :disabled="defaultZoom <= 0.3" icon="el-icon-zoom-out"
41 @click="processZoomOut()" />
42 <el-button size="medium" type="default" style="width: 90px;">{{ Math.floor(this.defaultZoom * 10 * 10) + "%"
43 }}</el-button>
44 <el-button size="medium" type="default" :plain="true" :disabled="defaultZoom >= 3.9" icon="el-icon-zoom-in"
45 @click="processZoomIn()" />
46 <el-button size="medium" type="default" icon="el-icon-c-scale-to-original" @click="processReZoom()" />
47 <slot />
48 </el-button-group>
49 </el-row>
50 </div>
51 </div>
52 <!-- 已完成节点悬浮弹窗 -->
53 <div class="information-list">
54 <el-select v-model="selectValue" @change="handleSelect">
55 <el-option v-for="item in selectOptions" :key="item.value" :label="item.label" :value="item.value">
56 </el-option>
57 </el-select>
58 <el-table height="190" :data="taskCommentList" size="mini" border header-cell-class-name="table-header-gray">
59 <el-table-column label="序号" header-align="center" align="center" type="index" width="55px" />
60 <el-table-column label="流程状态" header-align="center" align="center">
61 <template slot-scope="scope">
62 <div v-if="scope.row.endTime">已完结</div>
63 <div v-else>正在办理</div>
64 </template>
65 </el-table-column>
66 <el-table-column label="环节名称" prop="name" minWidth="100" align="center" />
67 <el-table-column label="办理人" prop="agent" minWidth="120" align="center" />
68 <el-table-column label="转入时间" prop="createTime" :formatter="formatDate" width="160" align="center" />
69 <el-table-column label="认领时间" prop="claimTime" :formatter="formatDate" width="160" align="center" />
70 <el-table-column label="转出时间" prop="endTime" :formatter="formatDate" width="160" align="center" />
71 <el-table-column label="操作方式" prop="controls" align="center"/>
72 <el-table-column label="意见" prop="idea" align="center"/>
73 </el-table>
74 </div>
75 </div>
76 </template>
77 <script>
78 import '@/styles/package/theme/index.scss'
79 import BpmnViewer from 'bpmn-js/lib/Viewer'
80 import MoveCanvasModule from 'diagram-js/lib/navigation/movecanvas'
81 export default {
82 props: {
83 formData: {
84 type: Object,
85 default: {}
86 }
87 },
88 data () {
89 return {
90 dlgTitle: undefined,
91 defaultZoom: 1,
92 // 是否正在加载流程图
93 isLoading: true,
94 bpmnViewer: undefined,
95 // 已完成流程元素
96 processNodeInfo: undefined,
97 // 当前任务id
98 selectTaskId: undefined,
99 // 任务节点审批记录
100 taskList:[],
101 taskCommentList: [],
102 // 已完成任务悬浮延迟Timer
103 hoverTimer: null,
104 // 下拉
105 selectValue: '',
106 selectOptions: []
107 }
108 },
109 created () {
110 this.$nextTick(() => {
111 // 获取流程记录
112 this.getCommentList()
113 this.setProcessStatus(this.formData.finishedInfo);
114 this.importXML(this.formData.xml)
115
116 })
117 },
118 destroyed () {
119 this.clearViewer()
120 },
121 methods: {
122 formatDate(row, column) {
123 let data = row[column.property]
124 if(data == null) {
125 return null
126 }
127 let dt = new Date(data)
128 return dt.getFullYear() + '-' + (dt.getMonth() + 1) + '-' + dt.getDate() + ' ' + dt.getHours() + ':' + dt.getMinutes() + ':' + dt.getSeconds()
129 },
130 processReZoom () {
131 this.defaultZoom = 1
132 this.bpmnViewer.get('canvas').zoom('fit-viewport', 'auto')
133 },
134 processZoomIn (zoomStep = 0.1) {
135 const newZoom = Math.floor(this.defaultZoom * 100 + zoomStep * 100) / 100
136 if (newZoom > 4) {
137 throw new Error('[Process Designer Warn ]: The zoom ratio cannot be greater than 4')
138 }
139 this.defaultZoom = newZoom
140 this.bpmnViewer.get('canvas').zoom(this.defaultZoom)
141 },
142 processZoomOut (zoomStep = 0.1) {
143 const newZoom = Math.floor(this.defaultZoom * 100 - zoomStep * 100) / 100
144 if (newZoom < 0.2) {
145 throw new Error('[Process Designer Warn ]: The zoom ratio cannot be scss than 0.2')
146 }
147 this.defaultZoom = newZoom
148 this.bpmnViewer.get('canvas').zoom(this.defaultZoom)
149 },
150 getOperationTagType (type) {
151 return 'success'
152 },
153 // 流程图预览清空
154 clearViewer (a) {
155 if (this.$refs.processCanvas) {
156 this.$refs.processCanvas.innerHTML = ''
157 }
158 if (this.bpmnViewer) {
159 this.bpmnViewer.destroy()
160 }
161 this.bpmnViewer = null
162 },
163 // 添加自定义箭头
164 addCustomDefs () {
165 const canvas = this.bpmnViewer.get('canvas')
166 const svg = canvas._svg
167 const customSuccessDefs = this.$refs.customSuccessDefs
168 const customFailDefs = this.$refs.customFailDefs
169 svg.appendChild(customSuccessDefs)
170 svg.appendChild(customFailDefs)
171 },
172 // 任务悬浮弹窗
173 onSelectElement (element) {
174 this.selectTaskId = undefined
175 this.dlgTitle = undefined
176 let allfinishedTaskSet = [...this.processNodeInfo.finishedTaskSet, ...this.processNodeInfo.unfinishedTaskSet]
177 if (this.processNodeInfo == null || allfinishedTaskSet == null)
178 return
179 if (element == null || allfinishedTaskSet.indexOf(element.id) === -1) {
180 return
181 }
182 this.selectTaskId = element.id
183 this.selectValue = element.id
184 this.dlgTitle = element.businessObject ? element.businessObject.name : undefined
185 // 计算当前悬浮任务审批记录,如果记录为空不显示弹窗
186 this.taskCommentList = (this.taskList || []).filter(item => {
187 return item.taskDefinitionKey === this.selectTaskId
188 })
189 if (this.taskCommentList.length==0) {
190 this.taskCommentList = this.taskList;
191 }
192 },
193 // 下拉列表切换
194 handleSelect (val) {
195 this.taskCommentList = (this.taskList || []).filter(item => {
196 return item.taskDefinitionKey === val
197 })
198 if (this.taskCommentList.length==0) {
199 this.taskCommentList = this.taskList;
200 }
201 },
202 // 显示流程图
203 async importXML (xml) {
204 let xmlData = this.$x2js.xml2js(xml).definitions.process;
205 this.selectOptions = xmlData.userTask.map(item => {
206 return { value: item._id, label: item._name }
207 })
208 this.selectOptions = [{ value: xmlData.startEvent._id, label: '浏览记录' }, ...this.selectOptions]
209 this.selectOptions = this.selectOptions.map(item => {
210 if (this.formData.finishedInfo.finishedTaskSet.includes(item.value)) {
211 return item
212 }
213 if (this.formData.finishedInfo.unfinishedTaskSet.includes(item.value)) {
214 return item
215 }
216 }).filter(Boolean);
217 this.selectValue = xmlData.startEvent._id
218 this.clearViewer('a')
219 if (xml != null && xml !== '') {
220 try {
221 this.bpmnViewer = new BpmnViewer({
222 additionalModules: [
223 // 移动整个画布
224 MoveCanvasModule
225 ],
226 container: this.$refs.processCanvas
227 })
228 // 任务节点悬浮事件
229 this.bpmnViewer.on('element.click', ({ element }) => {
230 this.onSelectElement(element)
231 })
232 await this.bpmnViewer.importXML(xml)
233 this.isLoading = true
234 this.addCustomDefs()
235 } catch (e) {
236 this.clearViewer('b')
237 } finally {
238 this.isLoading = false
239 this.setProcessStatus(this.processNodeInfo)
240 this.$nextTick(() => {
241 this.processReZoom()
242 })
243 }
244 }
245 },
246 // 获取流程记录
247 getCommentList() {
248 this.formData.allCommentList.forEach(async (item,index) => {
249 item.comments.forEach(element => {
250 if(element.type=="COMPLETE"){
251 this.formData.allCommentList[index].idea=element.message
252 this.formData.allCommentList[index].controls="完成"
253 }
254 });
255 this.formData.allCommentList[index].agent=item.assignee.name
256 })
257 this.formData.handlinglist.forEach(async (item,index) => {
258 if(item.assignee.name){
259 this.formData.handlinglist[index].agent=item.assignee.name
260 }else{
261 let str=""
262 item.countersign.forEach((item) => {
263 str+=item.name+","
264 })
265 str=str.slice(0, -1);
266 this.formData.allCommentList[index].agent=str
267 }
268
269 })
270 this.taskList =[...this.formData.allCommentList,...this.formData.handlinglist];
271 // this.taskList =this.formData.allCommentList;
272 // 处理数据之后赋值
273 this.taskCommentList=this.taskList
274
275 },
276
277 // 设置流程图元素状态
278 setProcessStatus (processNodeInfo) {
279 this.processNodeInfo = processNodeInfo
280 if (this.isLoading || this.processNodeInfo == null || this.bpmnViewer == null) return
281 const { finishedTaskSet, rejectedTaskSet, unfinishedTaskSet, finishedSequenceFlowSet } = this.processNodeInfo
282 const canvas = this.bpmnViewer.get('canvas')
283 const elementRegistry = this.bpmnViewer.get('elementRegistry')
284 if (Array.isArray(finishedSequenceFlowSet)) {
285 finishedSequenceFlowSet.forEach(item => {
286 if (item != null) {
287 canvas.addMarker(item, 'success')
288 const element = elementRegistry.get(item)
289 const conditionExpression = element.businessObject.conditionExpression
290 if (conditionExpression) {
291 canvas.addMarker(item, 'condition-expression')
292 }
293 }
294 })
295 }
296 if (Array.isArray(finishedTaskSet)) {
297 finishedTaskSet.forEach(item => canvas.addMarker(item, 'success'))
298 }
299 if (Array.isArray(unfinishedTaskSet)) {
300 unfinishedTaskSet.forEach(item => canvas.addMarker(item, 'primary'))
301 }
302 if (Array.isArray(rejectedTaskSet)) {
303 rejectedTaskSet.forEach(item => {
304 if (item != null) {
305 const element = elementRegistry.get(item)
306 if (element.type.includes('Task')) {
307 canvas.addMarker(item, 'danger')
308 } else {
309 canvas.addMarker(item, 'warning')
310 }
311 }
312 })
313 }
314
315 }
316 }
317 }
318 </script>
319 <style scoped lang="scss">
320 .information-list {
321 height: 220px;
322 margin-top: 10px;
323
324 p {
325 font-size: 16px;
326 line-height: 24px;
327 }
328 }
329 /deep/.bjs-powered-by {
330 display: none;
331 }
332 // /deep/.information-list {
333 // height: 170px;
334 // overflow: visible;
335 // }
336 </style>
...@@ -143,7 +143,7 @@ export default { ...@@ -143,7 +143,7 @@ export default {
143 render: (h, scope) => { 143 render: (h, scope) => {
144 return ( 144 return (
145 <div> 145 <div>
146 {this.$route.query.viewtype ? ( 146 {!this.showButton ? (
147 <el-button 147 <el-button
148 icon="el-icon-view" 148 icon="el-icon-view"
149 type="text" 149 type="text"
...@@ -263,22 +263,12 @@ export default { ...@@ -263,22 +263,12 @@ export default {
263 }, 263 },
264 // 修改 264 // 修改
265 editClick(index, row) { 265 editClick(index, row) {
266 // popupDialog("申请人信息", "workflow/components/addQlr", {
267 // showButton: this.$route.query.viewtype ? false : true,
268 // dataIndex :index,
269 // details :row,
270 // isaddupdate :false
271 // });
272 this.dataIndex = index; 266 this.dataIndex = index;
273 this.dialog = true; 267 this.dialog = true;
274 this.details = row; 268 this.details = row;
275 this.isaddupdate = false; 269 this.isaddupdate = false;
276 }, 270 },
277 queryViewClick(index, row) { 271 queryViewClick(index, row) {
278 // popupDialog("申请人信息", "workflow/components/addQlr", {
279 // showButton: this.$route.query.viewtype ? false : true,
280 // details: row,
281 // });
282 this.dialog = true; 272 this.dialog = true;
283 this.details = row; 273 this.details = row;
284 }, 274 },
......
...@@ -143,7 +143,7 @@ export default { ...@@ -143,7 +143,7 @@ export default {
143 render: (h, scope) => { 143 render: (h, scope) => {
144 return ( 144 return (
145 <div> 145 <div>
146 {this.$route.query.viewtype ? ( 146 {!this.showButton? (
147 <el-button 147 <el-button
148 icon="el-icon-view" 148 icon="el-icon-view"
149 type="text" 149 type="text"
...@@ -259,22 +259,12 @@ export default { ...@@ -259,22 +259,12 @@ export default {
259 259
260 // 修改 260 // 修改
261 editClick(index, row) { 261 editClick(index, row) {
262 // popupDialog("申请人信息", "workflow/components/addYwr", {
263 // showButton: this.$route.query.viewtype ? false : true,
264 // dataIndex :index,
265 // details :row,
266 // isaddupdate :false
267 // });
268 this.dataIndex = index; 262 this.dataIndex = index;
269 this.dialog = true; 263 this.dialog = true;
270 this.details = row; 264 this.details = row;
271 this.isaddupdate = false; 265 this.isaddupdate = false;
272 }, 266 },
273 queryViewClick(index, row) { 267 queryViewClick(index, row) {
274 // popupDialog("申请人信息", "workflow/components/addYwr", {
275 // showButton: this.$route.query.viewtype ? false : true,
276 // details: row,
277 // });
278 this.dialog = true; 268 this.dialog = true;
279 this.details = row; 269 this.details = row;
280 }, 270 },
......
...@@ -16,8 +16,7 @@ ...@@ -16,8 +16,7 @@
16 :inline="flag" 16 :inline="flag"
17 :show-message="false" 17 :show-message="false"
18 inline-message 18 inline-message
19 label-width="145px" 19 label-width="145px">
20 >
21 <div class="slxx_con" v-if="isShow" :class="flag ? 'formMarginBot0' : ''"> 20 <div class="slxx_con" v-if="isShow" :class="flag ? 'formMarginBot0' : ''">
22 <div class="slxx_title title-block"> 21 <div class="slxx_title title-block">
23 补录信息 22 补录信息
...@@ -44,7 +43,7 @@ ...@@ -44,7 +43,7 @@
44 房地产权(独幢、层、套、间房屋) 43 房地产权(独幢、层、套、间房屋)
45 <div class="triangle"></div> 44 <div class="triangle"></div>
46 </div> 45 </div>
47 <el-row :gutter="10" class="ssqlxx"> 46 <el-row :gutter="10" class="ssqlxx">
48 <el-col :span="24" v-if="ssqlxxshow"> 47 <el-col :span="24" v-if="ssqlxxshow">
49 <el-form-item label="上手权利信息:"> 48 <el-form-item label="上手权利信息:">
50 <select-table 49 <select-table
...@@ -52,18 +51,15 @@ ...@@ -52,18 +51,15 @@
52 :table-width="550" 51 :table-width="550"
53 :tableData="ssQlxxList" 52 :tableData="ssQlxxList"
54 :props="props" 53 :props="props"
55 @change="ssQlxxchange" 54 @change="ssQlxxchange">
56 >
57 <el-table-column 55 <el-table-column
58 prop="qllxmc" 56 prop="qllxmc"
59 width="130" 57 width="130"
60 label="权利类型" 58 label="权利类型"></el-table-column>
61 ></el-table-column>
62 <el-table-column 59 <el-table-column
63 prop="bdcqzh" 60 prop="bdcqzh"
64 width="160" 61 width="160"
65 label="不动产权证书" 62 label="不动产权证书"></el-table-column>
66 ></el-table-column>
67 <el-table-column prop="qlrmc" label="权利人"></el-table-column> 63 <el-table-column prop="qlrmc" label="权利人"></el-table-column>
68 <el-table-column prop="mjmc" label="面积"></el-table-column> 64 <el-table-column prop="mjmc" label="面积"></el-table-column>
69 <el-table-column prop="ytmc" label="用途"></el-table-column> 65 <el-table-column prop="ytmc" label="用途"></el-table-column>
...@@ -102,8 +98,7 @@ ...@@ -102,8 +98,7 @@
102 v-for="item in djlxlist" 98 v-for="item in djlxlist"
103 :key="item.dcode" 99 :key="item.dcode"
104 :label="item.dname" 100 :label="item.dname"
105 :value="item.dcode" 101 :value="item.dcode">
106 >
107 </el-option> 102 </el-option>
108 </el-select> 103 </el-select>
109 </el-form-item> 104 </el-form-item>
...@@ -137,8 +132,7 @@ ...@@ -137,8 +132,7 @@
137 placeholder="" 132 placeholder=""
138 :normalizer="normalizer" 133 :normalizer="normalizer"
139 :show-count="true" 134 :show-count="true"
140 :options="dictData['A9']" 135 :options="dictData['A9']" />
141 />
142 </el-form-item> 136 </el-form-item>
143 </el-col> 137 </el-col>
144 <el-col :span="8"> 138 <el-col :span="8">
...@@ -146,15 +140,13 @@ ...@@ -146,15 +140,13 @@
146 <div style="display: flex"> 140 <div style="display: flex">
147 <el-input 141 <el-input
148 v-model="ruleForm.fdcq2.qjjg" 142 v-model="ruleForm.fdcq2.qjjg"
149 style="width: 500%" 143 style="width: 500%"></el-input>
150 ></el-input>
151 <el-select v-model="ruleForm.fdcq2.jedw"> 144 <el-select v-model="ruleForm.fdcq2.jedw">
152 <el-option 145 <el-option
153 v-for="item in dictData['A57']" 146 v-for="item in dictData['A57']"
154 :key="item.dcode" 147 :key="item.dcode"
155 :label="item.dname" 148 :label="item.dname"
156 :value="item.dcode" 149 :value="item.dcode">
157 >
158 </el-option> 150 </el-option>
159 </el-select> 151 </el-select>
160 </div> 152 </div>
...@@ -167,8 +159,7 @@ ...@@ -167,8 +159,7 @@
167 v-for="item in qsztlist" 159 v-for="item in qsztlist"
168 :key="item.dcode" 160 :key="item.dcode"
169 :label="item.dname" 161 :label="item.dname"
170 :value="item.dcode" 162 :value="item.dcode">
171 >
172 </el-option> 163 </el-option>
173 </el-select> 164 </el-select>
174 </el-form-item> 165 </el-form-item>
...@@ -180,8 +171,7 @@ ...@@ -180,8 +171,7 @@
180 v-for="item in dictData['A17']" 171 v-for="item in dictData['A17']"
181 :key="item.dcode" 172 :key="item.dcode"
182 :label="item.dname" 173 :label="item.dname"
183 :value="item.dcode" 174 :value="item.dcode">
184 >
185 </el-option> 175 </el-option>
186 </el-select> 176 </el-select>
187 </el-form-item> 177 </el-form-item>
...@@ -203,8 +193,7 @@ ...@@ -203,8 +193,7 @@
203 v-for="item in dictData['A19']" 193 v-for="item in dictData['A19']"
204 :key="item.dcode" 194 :key="item.dcode"
205 :label="item.dname" 195 :label="item.dname"
206 :value="item.dcode" 196 :value="item.dcode">
207 >
208 </el-option> 197 </el-option>
209 </el-select> 198 </el-select>
210 </el-form-item> 199 </el-form-item>
...@@ -213,15 +202,13 @@ ...@@ -213,15 +202,13 @@
213 <el-form-item 202 <el-form-item
214 label="房屋结构:" 203 label="房屋结构:"
215 prop="fdcq2.fwjg" 204 prop="fdcq2.fwjg"
216 :rules="rules.fwjgrules" 205 :rules="rules.fwjgrules">
217 >
218 <el-select v-model="ruleForm.fdcq2.fwjg"> 206 <el-select v-model="ruleForm.fdcq2.fwjg">
219 <el-option 207 <el-option
220 v-for="item in dictData['A46']" 208 v-for="item in dictData['A46']"
221 :key="item.dcode" 209 :key="item.dcode"
222 :label="item.dname" 210 :label="item.dname"
223 :value="item.dcode" 211 :value="item.dcode">
224 >
225 </el-option> 212 </el-option>
226 </el-select> 213 </el-select>
227 </el-form-item> 214 </el-form-item>
...@@ -261,8 +248,7 @@ ...@@ -261,8 +248,7 @@
261 <el-form-item 248 <el-form-item
262 label="不动产权证号:" 249 label="不动产权证号:"
263 prop="qlxx.bdcqzh" 250 prop="qlxx.bdcqzh"
264 :rules="rules.bdcqzhrules" 251 :rules="rules.bdcqzhrules">
265 >
266 <el-input v-model="ruleForm.qlxx.bdcqzh"></el-input> 252 <el-input v-model="ruleForm.qlxx.bdcqzh"></el-input>
267 </el-form-item> 253 </el-form-item>
268 </el-col> 254 </el-col>
...@@ -279,8 +265,7 @@ ...@@ -279,8 +265,7 @@
279 <el-form-item 265 <el-form-item
280 label="登记机构:" 266 label="登记机构:"
281 prop="qlxx.djjg" 267 prop="qlxx.djjg"
282 :rules="rules.djjgrules" 268 :rules="rules.djjgrules">
283 >
284 <el-input v-model="ruleForm.qlxx.djjg"></el-input> 269 <el-input v-model="ruleForm.qlxx.djjg"></el-input>
285 </el-form-item> 270 </el-form-item>
286 </el-col> 271 </el-col>
...@@ -288,8 +273,7 @@ ...@@ -288,8 +273,7 @@
288 <el-form-item 273 <el-form-item
289 label="登簿人:" 274 label="登簿人:"
290 prop="qlxx.dbr" 275 prop="qlxx.dbr"
291 :rules="rules.dbrrules" 276 :rules="rules.dbrrules">
292 >
293 <el-input v-model="ruleForm.qlxx.dbr"></el-input> 277 <el-input v-model="ruleForm.qlxx.dbr"></el-input>
294 </el-form-item> 278 </el-form-item>
295 </el-col> 279 </el-col>
...@@ -297,15 +281,13 @@ ...@@ -297,15 +281,13 @@
297 <el-form-item 281 <el-form-item
298 label="登记时间:" 282 label="登记时间:"
299 prop="qlxx.djsj" 283 prop="qlxx.djsj"
300 :rules="rules.djsjrules" 284 :rules="rules.djsjrules">
301 >
302 <el-date-picker 285 <el-date-picker
303 v-model="ruleForm.qlxx.djsj" 286 v-model="ruleForm.qlxx.djsj"
304 type="date" 287 type="date"
305 placeholder="选择日期" 288 placeholder="选择日期"
306 value-format="yyyy-MM-dd HH:mm:ss" 289 value-format="yyyy-MM-dd HH:mm:ss"
307 format="yyyy-MM-dd" 290 format="yyyy-MM-dd">
308 >
309 </el-date-picker> 291 </el-date-picker>
310 </el-form-item> 292 </el-form-item>
311 </el-col> 293 </el-col>
...@@ -331,8 +313,7 @@ ...@@ -331,8 +313,7 @@
331 <tdytTable 313 <tdytTable
332 :tableData="ruleForm.tdytqxList" 314 :tableData="ruleForm.tdytqxList"
333 @upDateTdytxxList="upDateTdytxxList" 315 @upDateTdytxxList="upDateTdytxxList"
334 :ableOperation="ableOperation" 316 :ableOperation="ableOperation" />
335 />
336 <div class="slxx_title title-block"> 317 <div class="slxx_title title-block">
337 权利人信息 318 权利人信息
338 <div class="triangle"></div> 319 <div class="triangle"></div>
...@@ -340,10 +321,9 @@ ...@@ -340,10 +321,9 @@
340 <el-row :gutter="10"> 321 <el-row :gutter="10">
341 <el-col :span="12"> 322 <el-col :span="12">
342 <el-form-item label="共有方式:"> 323 <el-form-item label="共有方式:">
343 <el-radio-group 324 <el-radio-group
344 :disabled="!ableOperation" 325 :disabled="!ableOperation"
345 v-model="ruleForm.qlxx.gyfs" 326 v-model="ruleForm.qlxx.gyfs">
346 >
347 <el-radio label="0">单独所有</el-radio> 327 <el-radio label="0">单独所有</el-radio>
348 <el-radio label="1">共同共有</el-radio> 328 <el-radio label="1">共同共有</el-radio>
349 <el-radio label="2">按份所有</el-radio> 329 <el-radio label="2">按份所有</el-radio>
...@@ -357,8 +337,7 @@ ...@@ -357,8 +337,7 @@
357 @upDateQlrxxList="upDateQlrxxList" 337 @upDateQlrxxList="upDateQlrxxList"
358 :ableOperation="ableOperation" 338 :ableOperation="ableOperation"
359 :key="key" 339 :key="key"
360 :gyfs="ruleForm.qlxx.gyfs" 340 :gyfs="ruleForm.qlxx.gyfs" />
361 />
362 </div> 341 </div>
363 <el-row class="btn" v-if="ableOperation"> 342 <el-row class="btn" v-if="ableOperation">
364 <el-form-item> 343 <el-form-item>
...@@ -369,269 +348,261 @@ ...@@ -369,269 +348,261 @@
369 </div> 348 </div>
370 </template> 349 </template>
371 <script> 350 <script>
372 import { mapGetters } from "vuex"; 351 import { mapGetters } from "vuex";
373 import { init,getSsQlxx, save } from "@/api/djbRepair.js"; 352 import { init, getSsQlxx, save } from "@/api/djbRepair.js";
374 import qlrCommonTable from "@/views/djbworkflow/components/qlrCommonTable"; 353 import qlrCommonTable from "@/views/djbworkflow/components/qlrCommonTable";
375 import selectTable from "@/components/selectTable/index.vue"; 354 import selectTable from "@/components/selectTable/index.vue";
376 import tdytTable from "@/views/workflow/components/tdytTable"; 355 import tdytTable from "@/views/workflow/components/tdytTable";
377 // import the component 356 // import the component
378 // import Treeselect from '@riophae/vue-treeselect' 357 // import Treeselect from '@riophae/vue-treeselect'
379 // // import the styles 358 // // import the styles
380 // import '@riophae/vue-treeselect/dist/vue-treeselect.css' 359 // import '@riophae/vue-treeselect/dist/vue-treeselect.css'
381 export default { 360 export default {
382 components: { qlrCommonTable, tdytTable,selectTable}, 361 components: { qlrCommonTable, tdytTable, selectTable },
383 computed: { 362 computed: {
384 ...mapGetters(["dictData", "flag"]), 363 ...mapGetters(["dictData", "flag"]),
385 // 根据流程判断表单是否为只读 364 // 根据流程判断表单是否为只读
386 editDisabled() { 365 editDisabled () {
387 if (!this.ableOperation) { 366 if (!this.ableOperation) {
388 //只读状态 367 //只读状态
389 return true; 368 return true;
390 }
391 return false;
392 },
393 },
394 data() {
395 return {
396 ssqlxxshow:true,
397 props: {
398 label: "bdcqzh",
399 value: "bdcdyid",
400 },
401 // 键名转换,方法默认是label和children进行树状渲染
402 normalizer(node) {
403 //方法
404 if (node.children == null || node.children == "null") {
405 delete node.children;
406 } 369 }
407 return { 370 return false;
408 id: node.dcode,
409 label: node.dname,
410 };
411 }, 371 },
412 372 },
413 //表单是否可操作 373 data () {
414 propsParam: this.$attrs, 374 return {
415 // 登记类型 375 ssqlxxshow: true,
416 djlxlist: [ 376 props: {
417 { 377 label: "bdcqzh",
418 dcode: "100", 378 value: "bdcdyid",
419 dname: "首次登记",
420 },
421 {
422 dcode: "200",
423 dname: "转移登记",
424 },
425 {
426 dcode: "300",
427 dname: "变更登记",
428 }, 379 },
429 { 380 // 键名转换,方法默认是label和children进行树状渲染
430 dcode: "500", 381 normalizer (node) {
431 dname: "更正登记", 382 //方法
383 if (node.children == null || node.children == "null") {
384 delete node.children;
385 }
386 return {
387 id: node.dcode,
388 label: node.dname,
389 };
432 }, 390 },
433 391
434 { 392 //表单是否可操作
435 dcode: "901", 393 propsParam: this.$attrs,
436 dname: "补证", 394 // 登记类型
437 }, 395 djlxlist: [
438 { 396 {
439 dcode: "902", 397 dcode: "100",
440 dname: "换证", 398 dname: "首次登记",
441 }, 399 },
442 ], 400 {
443 // 权属状态 401 dcode: "200",
444 qsztlist: [ 402 dname: "转移登记",
445 { 403 },
446 dcode: "1", 404 {
447 dname: "现势", 405 dcode: "300",
448 }, 406 dname: "变更登记",
449 { 407 },
450 dcode: "2", 408 {
451 dname: "历史", 409 dcode: "500",
452 }, 410 dname: "更正登记",
453 ], 411 },
454 key: 0, 412
455 tdxz: null, 413 {
456 isShow: false, 414 dcode: "901",
457 disabled: true, 415 dname: "补证",
458 czrOptions: [], 416 },
459 ssQlxxList: [], 417 {
460 ruleForm: {}, 418 dcode: "902",
461 ableOperation: false, 419 dname: "换证",
462 //传递参数\ 420 },
463 rules: {
464 bdcqzhrules: [
465 { required: true, message: "不动产权证号:", trigger: "blur" },
466 ], 421 ],
467 // qxdmrules: [{ required: true, message: "区县代码", trigger: "blur" }], 422 // 权属状态
468 djjgrules: [{ required: true, message: "登记机构", trigger: "blur" }], 423 qsztlist: [
469 dbrrules: [{ required: true, message: "登簿人", trigger: "blur" }], 424 {
470 djsjrules: [{ required: true, message: "登记时间", trigger: "blur" }], 425 dcode: "1",
471 fwjgrules: [{ required: true, message: "房屋结构", trigger: "blur" }], 426 dname: "现势",
472 djlxrules: [{ required: true, message: "登记类型", trigger: "blur" }], 427 },
473 }, 428 {
474 }; 429 dcode: "2",
475 }, 430 dname: "历史",
476 created() {}, 431 },
477 mounted() { 432 ],
478 this.loadData(); 433 key: 0,
479 this.ableOperation = this.$parent.ableOperation; 434 tdxz: null,
480 }, 435 isShow: false,
481 methods: { 436 disabled: true,
482 ssQlxxchange(val) { 437 czrOptions: [],
483 this.ruleForm.ssQlxx = val; 438 ssQlxxList: [],
484 this.ruleForm.qlxx.ssywh = val.ssywh; 439 ruleForm: {},
440 ableOperation: false,
441 //传递参数\
442 rules: {
443 bdcqzhrules: [
444 { required: true, message: "不动产权证号:", trigger: "blur" },
445 ],
446 // qxdmrules: [{ required: true, message: "区县代码", trigger: "blur" }],
447 djjgrules: [{ required: true, message: "登记机构", trigger: "blur" }],
448 dbrrules: [{ required: true, message: "登簿人", trigger: "blur" }],
449 djsjrules: [{ required: true, message: "登记时间", trigger: "blur" }],
450 fwjgrules: [{ required: true, message: "房屋结构", trigger: "change" }],
451 djlxrules: [{ required: true, message: "登记类型", trigger: "change" }],
452 },
453 };
485 }, 454 },
486 djlxchange(val) { 455 created () { },
487 console.log("val",val); 456 mounted () {
488 if (val == null || val == 100) { 457 this.loadData();
489 this.ssqlxxshow = false; 458 this.ableOperation = this.$parent.ableOperation;
490 } else {
491 this.ssqlxxshow = true;
492 }
493 }, 459 },
460 methods: {
461 ssQlxxchange (val) {
462 this.ruleForm.ssQlxx = val;
463 this.ruleForm.qlxx.ssywh = val.ssywh;
464 },
465 djlxchange (val) {
466 console.log("val", val);
467 if (val == null || val == 100) {
468 this.ssqlxxshow = false;
469 } else {
470 this.ssqlxxshow = true;
471 }
472 },
494 473
495 loadData() { 474 loadData () {
496 this.$startLoading(); 475 this.$startLoading();
497 this.propsParam.isEdit = this.$parent.isEdit; 476 this.propsParam.isEdit = this.$parent.isEdit;
498 init(this.propsParam).then((res) => { 477 init(this.propsParam).then((res) => {
499 if (res.code == 200) { 478 if (res.code == 200) {
500 this.ruleForm = res.result; 479 this.ruleForm = res.result;
501 let djlx = this.ruleForm.qlxx.djlx; 480 let djlx = this.ruleForm.qlxx.djlx;
502 if (djlx == null || djlx == 100) { 481 if (djlx == null || djlx == 100) {
503 this.ssqlxxshow = false; 482 this.ssqlxxshow = false;
504 } 483 }
505 this.$endLoading(); 484 this.$endLoading();
506 if (this.ruleForm.tdytqxList.length > 0) { 485 if (this.ruleForm.tdytqxList.length > 0) {
507 this.tdxz = this.ruleForm.tdytqxList[0].qlxzbm; 486 this.tdxz = this.ruleForm.tdytqxList[0].qlxzbm;
508 487
509 } else { 488 } else {
510 this.tdxz = null; 489 this.tdxz = null;
490 }
491 this.isShow = true;
511 } 492 }
512 this.isShow = true; 493 });
513 }
514 });
515 //获取主体信息 494 //获取主体信息
516 getSsQlxx({ 495 getSsQlxx({
517 bdcdyid: this.propsParam.bdcdyid, 496 bdcdyid: this.propsParam.bdcdyid,
518 qllx: this.propsParam.qllx, 497 qllx: this.propsParam.qllx,
519 }).then((res) => { 498 }).then((res) => {
520 if (res.code == 200) { 499 if (res.code == 200) {
521 this.ssQlxxList = res.result; 500 this.ssQlxxList = res.result;
522 }
523 });
524 },
525 // 更新土地用途信息
526 upDateTdytxxList(val) {
527 this.ruleForm.tdytqxList && (this.ruleForm.tdytqxList = _.cloneDeep(val));
528 this.key++;
529 },
530 // 更新权利人信息
531 upDateQlrxxList(val) {
532 this.ruleForm.qlrData && (this.ruleForm.qlrData = _.cloneDeep(val));
533 this.czrOptions = this.ruleForm.qlrData;
534 this.key++;
535 },
536 // 更新义务人信息
537 upDateYwrxxList(val) {
538 this.ruleForm.ywrData && (this.ruleForm.ywrData = _.cloneDeep(val));
539 this.key++;
540 },
541 onSubmit() {
542 this.$refs.ruleForm.validate((valid) => {
543 if (valid) {
544 if (this.ruleForm.qlrData.length == 0) {
545 this.$message({
546 showClose: true,
547 message: "请确认权利人信息",
548 type: "error",
549 });
550 return false;
551 } 501 }
552 if (this.ruleForm.ywrData.length == 0) { 502 });
553 this.$message({ 503 },
554 showClose: true, 504 // 更新土地用途信息
555 message: "请确认义务人信息", 505 upDateTdytxxList (val) {
556 type: "error", 506 this.ruleForm.tdytqxList && (this.ruleForm.tdytqxList = _.cloneDeep(val));
557 }); 507 this.key++;
558 return false; 508 },
559 } 509 // 更新权利人信息
560 if (this.ruleForm.tdytqxList.length == 0 && !this.tdxz) { 510 upDateQlrxxList (val) {
561 this.$message({ 511 this.ruleForm.qlrData && (this.ruleForm.qlrData = _.cloneDeep(val));
562 showClose: true, 512 this.czrOptions = this.ruleForm.qlrData;
563 message: "请补充土地用途信息", 513 this.key++;
564 type: "error", 514 },
565 }); 515 // 更新义务人信息
566 return false; 516 upDateYwrxxList (val) {
567 } 517 this.ruleForm.ywrData && (this.ruleForm.ywrData = _.cloneDeep(val));
568 if (!this.tdxz) { 518 this.key++;
569 this.$message({ 519 },
570 showClose: true, 520 onSubmit () {
571 message: "请补充土地性质", 521 this.$refs.ruleForm.validate((valid) => {
572 type: "error", 522 if (valid) {
573 }); 523 if (this.ruleForm.qlrData.length == 0) {
574 return false;
575 }
576 this.ruleForm.tdytqxList = this.ruleForm.tdytqxList.map((item) => {
577 return {
578 ...item,
579 qlxzbm: this.tdxz,
580 };
581 });
582 if (this.ruleForm.qlxx.gyfs == "0") {
583 if (this.ruleForm.qlrData.length > 1) {
584 this.$message({ 524 this.$message({
585 showClose: true, 525 showClose: true,
586 message: "共有方式:单独所有,权利人只能是一个人", 526 message: "请确认权利人信息",
587 type: "error", 527 type: "error",
588 }); 528 });
589 return false; 529 return false;
590 } 530 }
591 this.ruleForm.qlrData[0].sfczr = "1"; 531 if (this.ruleForm.tdytqxList.length == 0 && !this.tdxz) {
592 }
593 // if (this.ruleForm.qlxx.gyfs == "1") {
594 // //是否分别持证
595 // if (this.ruleForm.qlxx.sqfbcz == "1") {
596 // //是
597 // this.ruleForm.qlrData.forEach((item, index) => {
598 // item.sfczr = "1";
599 // });
600 // } else {
601 // this.ruleForm.qlrData.forEach((item, index) => {
602 // if (item.zjh == this.ruleForm.czr) {
603 // item.sfczr = "1";
604 // } else {
605 // item.sfczr = "0";
606 // }
607 // });
608 // }
609 // }
610 save(this.ruleForm).then((res) => {
611 if (res.code === 200) {
612 this.$message({ 532 this.$message({
613 showClose: true, 533 showClose: true,
614 message: "保存成功!", 534 message: "请补充土地用途信息",
615 type: "success", 535 type: "error",
616 }); 536 });
617 this.$store.dispatch("user/refreshPage", true); 537 return false;
618 } else { 538 }
539 if (!this.tdxz) {
619 this.$message({ 540 this.$message({
620 showClose: true, 541 showClose: true,
621 message: res.message, 542 message: "请补充土地性质",
622 type: "error", 543 type: "error",
623 }); 544 });
545 return false;
624 } 546 }
625 }); 547 this.ruleForm.tdytqxList = this.ruleForm.tdytqxList.map((item) => {
626 } else { 548 return {
627 return false; 549 ...item,
628 } 550 qlxzbm: this.tdxz,
629 }); 551 };
552 });
553 if (this.ruleForm.qlxx.gyfs == "0") {
554 if (this.ruleForm.qlrData.length > 1) {
555 this.$message({
556 showClose: true,
557 message: "共有方式:单独所有,权利人只能是一个人",
558 type: "error",
559 });
560 return false;
561 }
562 this.ruleForm.qlrData[0].sfczr = "1";
563 }
564 // if (this.ruleForm.qlxx.gyfs == "1") {
565 // //是否分别持证
566 // if (this.ruleForm.qlxx.sqfbcz == "1") {
567 // //是
568 // this.ruleForm.qlrData.forEach((item, index) => {
569 // item.sfczr = "1";
570 // });
571 // } else {
572 // this.ruleForm.qlrData.forEach((item, index) => {
573 // if (item.zjh == this.ruleForm.czr) {
574 // item.sfczr = "1";
575 // } else {
576 // item.sfczr = "0";
577 // }
578 // });
579 // }
580 // }
581 save(this.ruleForm).then((res) => {
582 if (res.code === 200) {
583 this.$message({
584 showClose: true,
585 message: "保存成功!",
586 type: "success",
587 });
588 this.$store.dispatch("user/refreshPage", true);
589 } else {
590 this.$message({
591 showClose: true,
592 message: res.message,
593 type: "error",
594 });
595 }
596 });
597 } else {
598 return false;
599 }
600 });
601 },
630 }, 602 },
631 }, 603 };
632 };
633 </script> 604 </script>
634 <style scoped lang="scss"> 605 <style scoped lang="scss">
635 @import "~@/styles/public.scss"; 606 @import "~@/styles/public.scss";
636 @import "~@/styles/slxx/slxx.scss"; 607 @import "~@/styles/slxx/slxx.scss";
637 </style> 608 </style>
......
...@@ -224,7 +224,7 @@ ...@@ -224,7 +224,7 @@
224 /> 224 />
225 </div> 225 </div>
226 </div> 226 </div>
227 <el-row class="btn" v-if="!$route.query.viewtype"> 227 <el-row class="btn" v-if="ableOperation">
228 <el-form-item> 228 <el-form-item>
229 <el-button type="primary" @click="onSubmit">保存</el-button> 229 <el-button type="primary" @click="onSubmit">保存</el-button>
230 </el-form-item> 230 </el-form-item>
......
...@@ -71,7 +71,7 @@ ...@@ -71,7 +71,7 @@
71 import { getForm } from "./flowform"; 71 import { getForm } from "./flowform";
72 import { getStepFormInfo } from "@/api/workFlow.js"; 72 import { getStepFormInfo } from "@/api/workFlow.js";
73 import NoticeBar from "@/components/NoticeBar/index"; 73 import NoticeBar from "@/components/NoticeBar/index";
74 import ProcessViewer from "./components/processViewer.vue"; 74 // import ProcessViewer from "./components/processViewer.vue";
75 75
76 import ordinaryMenu from "./components/leftmenu/ordinaryMenu.vue"; 76 import ordinaryMenu from "./components/leftmenu/ordinaryMenu.vue";
77 import qllxDailog from "./djbBook/components/qllxDailog"; 77 import qllxDailog from "./djbBook/components/qllxDailog";
...@@ -86,7 +86,6 @@ ...@@ -86,7 +86,6 @@
86 components: { 86 components: {
87 selectBdc, 87 selectBdc,
88 NoticeBar, 88 NoticeBar,
89 ProcessViewer,
90 ordinaryMenu, 89 ordinaryMenu,
91 qllxDailog, 90 qllxDailog,
92 }, 91 },
......
...@@ -71,7 +71,7 @@ ...@@ -71,7 +71,7 @@
71 import { getForm } from "./flowform"; 71 import { getForm } from "./flowform";
72 import { getBlYbxStepFormInfo } from "@/api/workFlow.js"; 72 import { getBlYbxStepFormInfo } from "@/api/workFlow.js";
73 import NoticeBar from "@/components/NoticeBar/index"; 73 import NoticeBar from "@/components/NoticeBar/index";
74 import ProcessViewer from "./components/processViewer.vue"; 74 // import ProcessViewer from "./components/processViewer.vue";
75 // 引入左侧菜单 75 // 引入左侧菜单
76 import { leftMenubl } from "@/api/djbRepair.js"; 76 import { leftMenubl } from "@/api/djbRepair.js";
77 import ordinaryMenu from "./components/leftmenu/ordinaryMenu.vue"; 77 import ordinaryMenu from "./components/leftmenu/ordinaryMenu.vue";
...@@ -86,7 +86,6 @@ ...@@ -86,7 +86,6 @@
86 components: { 86 components: {
87 selectBdc, 87 selectBdc,
88 NoticeBar, 88 NoticeBar,
89 ProcessViewer,
90 ordinaryMenu, 89 ordinaryMenu,
91 qllxDailog, 90 qllxDailog,
92 }, 91 },
......
1 <!--
2 * @Description:
3 * @Autor: renchao
4 * @LastEditTime: 2023-07-19 16:04:43
5 -->
1 <template> 6 <template>
2 <dialogBox title="新增法律法规" @submitForm="submitForm" saveButton="保存" :isFullscreen="false" width="50%" 7 <dialogBox title="新增法律法规" @submitForm="submitForm" saveButton="保存" :isFullscreen="false" width="50%"
3 @closeDialog="closeDialog" v-model="value"> 8 @closeDialog="closeDialog" v-model="value">
...@@ -25,72 +30,71 @@ ...@@ -25,72 +30,71 @@
25 </template> 30 </template>
26 31
27 <script> 32 <script>
28 import { addSysNotice } from "@/api/sysNotice.js" 33 import { addSysNotice } from "@/api/sysNotice.js"
29 import { upload } from "@/api/file.js" 34 import { upload } from "@/api/file.js"
30 export default { 35 export default {
31 props: { 36 props: {
32 value: { type: Boolean, default: false }, 37 value: { type: Boolean, default: false },
33 }, 38 },
34 data () { 39 data () {
35 return { 40 return {
36 ruleForm: { 41 ruleForm: {
37 noticeTitle: '', 42 noticeTitle: '',
38 noticeContent: '', 43 noticeContent: '',
39 noticeFileUrl: '', 44 noticeFileUrl: '',
40 noticeType: '2' 45 noticeType: '2'
46 },
47 rules: {
48 noticeTitle: [
49 { required: true, message: '请输入法律法规标题', trigger: 'blur' }
50 ]
51 },
52 }
53 },
54
55 methods: {
56 submitForm () {
57 let that = this;
58 that.$refs.ruleForm.validate(valid => {
59 if (valid) {
60 addSysNotice(this.ruleForm).then(res => {
61 if (res.code == 200) {
62 this.$message.success('保存成功')
63 this.$emit("input", false);
64 this.resetRuleForm();
65 this.$parent.queryClick();
66 } else {
67 this.$message.error(res.message)
68 }
69 })
70 } else {
71 // console.log('error submit!!');
72 return false;
73 }
74 });
75 },
76 //关闭窗口
77 closeDialog () {
78 this.$emit("input", false);
79 this.resetRuleForm();
41 }, 80 },
42 rules: { 81 //
43 noticeTitle: [ 82 resetRuleForm () {
44 { required: true, message: '请输入法律法规标题', trigger: 'blur' } 83 this.$refs['ruleForm'].resetFields();
45 ] 84 this.ruleForm.noticeType = '2'
85 },
86 beforeUpload (file) {
87 return true;
88 },
89 async handleChange (file) {
90 var formdata = new FormData();
91 formdata.append("file", file.raw);
92 upload(formdata).then(res => {
93 this.ruleForm.noticeFileUrl = res.message
94 })
46 }, 95 },
47 } 96 }
48 },
49
50 methods: {
51 submitForm () {
52 let that = this;
53 that.$refs.ruleForm.validate(valid => {
54 if (valid) {
55 addSysNotice(this.ruleForm).then(res => {
56 if (res.code == 200) {
57 this.$message.success('保存成功')
58 this.$emit("input", false);
59 this.resetRuleForm();
60 this.$parent.queryClick();
61 } else {
62 this.$message.error(res.message)
63 }
64 })
65 } else {
66 // console.log('error submit!!');
67 return false;
68 }
69 });
70 },
71 //关闭窗口
72 closeDialog () {
73 this.$emit("input", false);
74 this.resetRuleForm();
75 },
76 //
77 resetRuleForm () {
78 this.$refs['ruleForm'].resetFields();
79 this.ruleForm.noticeType = '2'
80 },
81 beforeUpload (file) {
82 return true;
83 },
84 async handleChange (file) {
85 var formdata = new FormData();
86 formdata.append("file", file.raw);
87 upload(formdata).then(res => {
88 this.ruleForm.noticeFileUrl = res.message
89 })
90 },
91 } 97 }
92 }
93 </script> 98 </script>
94 <style scoped lang="scss"> 99 <style scoped lang="scss">
95
96 </style> 100 </style>
......
1 <!--
2 * @Description:
3 * @Autor: renchao
4 * @LastEditTime: 2023-07-19 16:04:47
5 -->
1 <template> 6 <template>
2 <div class="from-clues"> 7 <div class="from-clues">
3 <!-- 表单部分 --> 8 <!-- 表单部分 -->
...@@ -11,7 +16,7 @@ ...@@ -11,7 +16,7 @@
11 </el-col> 16 </el-col>
12 <el-col :span="19" class="btnColRight"> 17 <el-col :span="19" class="btnColRight">
13 <el-form-item> 18 <el-form-item>
14 <el-button type="primary" native-type="submit" @click="handleSearch">查询1</el-button> 19 <el-button type="primary" native-type="submit" @click="handleSearch">查询1</el-button>
15 <el-button type="primary" @click="openDialog()">新增</el-button> 20 <el-button type="primary" @click="openDialog()">新增</el-button>
16 </el-form-item> 21 </el-form-item>
17 </el-col> 22 </el-col>
...@@ -29,79 +34,79 @@ ...@@ -29,79 +34,79 @@
29 </div> 34 </div>
30 </template> 35 </template>
31 <script> 36 <script>
32 import table from "@/utils/mixin/table"; 37 import table from "@/utils/mixin/table";
33 import { datas, sendThis } from "./flfgdata"; 38 import { datas, sendThis } from "./flfgdata";
34 import { getSysPolicyList, deleteSysNotice } from "@/api/sysNotice.js" 39 import { getSysPolicyList, deleteSysNotice } from "@/api/sysNotice.js"
35 import addDialog from "./components/addDialog.vue"; 40 import addDialog from "./components/addDialog.vue";
36 export default { 41 export default {
37 name: "flfg", 42 name: "flfg",
38 components: { addDialog }, 43 components: { addDialog },
39 mixins: [table], 44 mixins: [table],
40 mounted () { 45 mounted () {
41 sendThis(this); 46 sendThis(this);
42 this.queryClick() 47 this.queryClick()
43 },
44 data () {
45 return {
46 isDialog: false,
47 viewDialog: false,
48 ruleForm: {
49 noticeTitle: ''
50 },
51 tableData: {
52 total: 0,
53 columns: datas.columns(),
54 data: [],
55 },
56 isDiglog: false
57 }
58 },
59 methods: {
60 // 列表渲染接口
61 queryClick () {
62 this.$startLoading()
63 getSysPolicyList({ ...this.ruleForm, ...this.pageData }, { 'target': '#flfgLoading' }).then(res => {
64 if (res.code === 200) {
65 this.$endLoading()
66 let { total, records } = res.result
67 this.tableData.total = total;
68 this.tableData.data = records
69 }
70 })
71 }, 48 },
72 //打开新增弹窗 49 data () {
73 openDialog () { 50 return {
74 this.isDialog = true; 51 isDialog: false,
52 viewDialog: false,
53 ruleForm: {
54 noticeTitle: ''
55 },
56 tableData: {
57 total: 0,
58 columns: datas.columns(),
59 data: [],
60 },
61 isDiglog: false
62 }
75 }, 63 },
76 downloadFile (item) { 64 methods: {
77 const href = item.noticeFileUrl 65 // 列表渲染接口
78 window.open(href, '_blank'); 66 queryClick () {
79 }, 67 this.$startLoading()
80 //删除 68 getSysPolicyList({ ...this.ruleForm, ...this.pageData }, { 'target': '#flfgLoading' }).then(res => {
81 delNotice (item) { 69 if (res.code === 200) {
82 this.$confirm('是否确定删除', '提示', { 70 this.$endLoading()
83 confirmButtonText: '确定', 71 let { total, records } = res.result
84 cancelButtonText: '取消', 72 this.tableData.total = total;
85 type: 'warning' 73 this.tableData.data = records
86 }).then(() => {
87 deleteSysNotice({ "bsmNotice": item.bsmNotice }).then(res => {
88 if (res.code == 200) {
89 this.$message.success('删除成功')
90 this.queryClick();
91 } else {
92 this.$message.error(res.message)
93 } 74 }
94 }) 75 })
95 }).catch(() => { 76 },
96 this.$message({ 77 //打开新增弹窗
97 type: 'info', 78 openDialog () {
98 message: '已取消删除' 79 this.isDialog = true;
80 },
81 downloadFile (item) {
82 const href = item.noticeFileUrl
83 window.open(href, '_blank');
84 },
85 //删除
86 delNotice (item) {
87 this.$confirm('是否确定删除', '提示', {
88 confirmButtonText: '确定',
89 cancelButtonText: '取消',
90 type: 'warning'
91 }).then(() => {
92 deleteSysNotice({ "bsmNotice": item.bsmNotice }).then(res => {
93 if (res.code == 200) {
94 this.$message.success('删除成功')
95 this.queryClick();
96 } else {
97 this.$message.error(res.message)
98 }
99 })
100 }).catch(() => {
101 this.$message({
102 type: 'info',
103 message: '已取消删除'
104 });
99 }); 105 });
100 }); 106 },
101 }, 107 },
102 }, 108 };
103 };
104 </script> 109 </script>
105 <style scoped lang="scss"> 110 <style scoped lang="scss">
106 @import "~@/styles/public.scss"; 111 @import "~@/styles/public.scss";
107 </style> 112 </style>
......
1 <!--
2 * @Description:
3 * @Autor: renchao
4 * @LastEditTime: 2023-07-19 16:04:58
5 -->
1 <template> 6 <template>
2 <div> 7 <div>
3 <div class="qtjfjmb-edit-title"> 8 <div class="qtjfjmb-edit-title">
...@@ -117,140 +122,140 @@ ...@@ -117,140 +122,140 @@
117 </template> 122 </template>
118 123
119 <script> 124 <script>
120 import { updateSysSqywmbsz, getSysSqywmbszDetailById } from '@/api/sysSqywmbsz' 125 import { updateSysSqywmbsz, getSysSqywmbszDetailById } from '@/api/sysSqywmbsz'
121 export default { 126 export default {
122 props: { 127 props: {
123 formData: { 128 formData: {
124 type: Object, 129 type: Object,
125 default: () => { } 130 default: () => { }
126 } 131 }
127 }, 132 },
128 mounted () { 133 mounted () {
129 if (this.formData.bsmMb) { 134 if (this.formData.bsmMb) {
130 this.$startLoading() 135 this.$startLoading()
131 getSysSqywmbszDetailById(this.formData.bsmMb).then(res => { 136 getSysSqywmbszDetailById(this.formData.bsmMb).then(res => {
132 this.$endLoading() 137 this.$endLoading()
133 let { result } = res 138 let { result } = res
134 this.ruleForm = result ? result : {} 139 this.ruleForm = result ? result : {}
135 }) 140 })
136 } 141 }
137 }, 142 },
138 data () { 143 data () {
139 return { 144 return {
140 n: 0, 145 n: 0,
141 ruleForm: { 146 ruleForm: {
142 qllx: '', 147 qllx: '',
143 qllxmc: '', 148 qllxmc: '',
144 bdcqzlx: '', 149 bdcqzlx: '',
145 dymbbs: '', 150 dymbbs: '',
146 qlqtzk: '', 151 qlqtzk: '',
147 firstreg: '', 152 firstreg: '',
148 },
149 options: [
150 {
151 value: '1',
152 label: '不动产权证书'
153 }, 153 },
154 { 154 options: [
155 value: '2', 155 {
156 label: '不动产登记证明' 156 value: '1',
157 } 157 label: '不动产权证书'
158 ], 158 },
159 options1: [], 159 {
160 rules: { 160 value: '2',
161 qllx: [ 161 label: '不动产登记证明'
162 { required: true, message: '请输入权利类型编码', trigger: 'blur' } 162 }
163 ], 163 ],
164 qllxmc: [ 164 options1: [],
165 { required: true, message: '请输入权利类型名称', trigger: 'blur' } 165 rules: {
166 ], 166 qllx: [
167 bdcqzlx: [ 167 { required: true, message: '请输入权利类型编码', trigger: 'blur' }
168 { required: true, message: '请选择不动产权类型', trigger: 'change' } 168 ],
169 ], 169 qllxmc: [
170 dymbbs: [ 170 { required: true, message: '请输入权利类型名称', trigger: 'blur' }
171 { required: true, message: '请输入打印模板', trigger: 'blur' } 171 ],
172 ], 172 bdcqzlx: [
173 qlqtztmb: [ 173 { required: true, message: '请选择不动产权类型', trigger: 'change' }
174 { required: true, message: '请输入权利其他状况模板', trigger: 'blur' } 174 ],
175 ], 175 dymbbs: [
176 }, 176 { required: true, message: '请输入打印模板', trigger: 'blur' }
177 titleList: [ 177 ],
178 { 178 qlqtztmb: [
179 name: '首次登记' 179 { required: true, message: '请输入权利其他状况模板', trigger: 'blur' }
180 ],
180 }, 181 },
181 { 182 titleList: [
182 name: '转移登记' 183 {
183 }, 184 name: '首次登记'
184 { 185 },
185 name: '变更登记' 186 {
186 }, 187 name: '转移登记'
187 { 188 },
188 name: '注销登记' 189 {
189 }, 190 name: '变更登记'
190 { 191 },
191 name: '更正登记' 192 {
192 }, 193 name: '注销登记'
193 { 194 },
194 name: '补证登记' 195 {
195 }, 196 name: '更正登记'
196 { 197 },
197 name: '换证登记' 198 {
198 } 199 name: '补证登记'
199 ] 200 },
200 } 201 {
201 }, 202 name: '换证登记'
202 methods: { 203 }
203 handleSelect (index) { 204 ]
204 this.n = index 205 }
205 }, 206 },
206 submitForm () { 207 methods: {
207 let that = this 208 handleSelect (index) {
208 updateSysSqywmbsz(this.ruleForm).then(res => { 209 this.n = index
209 if (res.code === 200) { 210 },
210 this.$popupCacel() 211 submitForm () {
211 that.$message({ 212 let that = this
212 message: '修改成功', 213 updateSysSqywmbsz(this.ruleForm).then(res => {
213 type: 'success' 214 if (res.code === 200) {
214 }) 215 this.$popupCacel()
215 } 216 that.$message({
216 }) 217 message: '修改成功',
218 type: 'success'
219 })
220 }
221 })
222 }
217 } 223 }
218 } 224 }
219 }
220 </script> 225 </script>
221 <style scoped lang="scss"> 226 <style scoped lang="scss">
222 @import "~@/styles/mixin.scss"; 227 @import "~@/styles/mixin.scss";
223 @import "~@/styles/dialogBoxheader.scss"; 228 @import "~@/styles/dialogBoxheader.scss";
224 229
225 .qtjfjmb-edit-title { 230 .qtjfjmb-edit-title {
226 padding-bottom: 10px; 231 padding-bottom: 10px;
227 border-bottom: 1px solid $borderColor; 232 border-bottom: 1px solid $borderColor;
228 margin-bottom: 10px; 233 margin-bottom: 10px;
229 } 234 }
230 235
231 ul { 236 ul {
232 @include flex; 237 @include flex;
233 border-radius: 5px; 238 border-radius: 5px;
234 overflow: hidden; 239 overflow: hidden;
235 margin-bottom: 20px; 240 margin-bottom: 20px;
236 241
237 .active { 242 .active {
238 background: $light-blue; 243 background: $light-blue;
239 color: #fff; 244 color: #fff;
240 } 245 }
241 246
242 li { 247 li {
243 flex: 1; 248 flex: 1;
244 line-height: 36px; 249 line-height: 36px;
245 @include flex-center; 250 @include flex-center;
246 border: 1px solid $borderColor; 251 border: 1px solid $borderColor;
247 margin-left: -1px; 252 margin-left: -1px;
248 cursor: pointer; 253 cursor: pointer;
249 transition: all 0.3s; 254 transition: all 0.3s;
250 255
251 &:hover { 256 &:hover {
252 @extend .active; 257 @extend .active;
258 }
253 } 259 }
254 } 260 }
255 }
256 </style> 261 </style>
......
1 <!-- 1 <!--
2 * @Description: 2 * @Description:
3 * @Autor: renchao 3 * @Autor: renchao
4 * @LastEditTime: 2023-07-17 13:51:03 4 * @LastEditTime: 2023-07-17 13:51:03
5 --> 5 -->
...@@ -38,6 +38,7 @@ ...@@ -38,6 +38,7 @@
38 }, 38 },
39 data () { 39 data () {
40 return { 40 return {
41 isDisabled: this.disabled,
41 key: 0, 42 key: 0,
42 dataIndex: 0, 43 dataIndex: 0,
43 dialog: false, 44 dialog: false,
...@@ -48,7 +49,7 @@ ...@@ -48,7 +49,7 @@
48 width: '50', 49 width: '50',
49 renderHeader: (h, scope) => { 50 renderHeader: (h, scope) => {
50 return <div> { 51 return <div> {
51 this.$route.query.viewtype == 1 ? '序号' : <i class="el-icon-plus pointer" onClick={() => { this.addClick() }}></i> 52 this.isDisabled? '序号' : <i class="el-icon-plus pointer" onClick={() => { this.addClick() }}></i>
52 } 53 }
53 </div> 54 </div>
54 }, 55 },
...@@ -56,7 +57,7 @@ ...@@ -56,7 +57,7 @@
56 return ( 57 return (
57 <div> 58 <div>
58 { 59 {
59 this.$route.query.viewtype == 1 ? <span>{scope.$index + 1}</span> : 60 this.isDisabled? <span>{scope.$index + 1}</span> :
60 <i class="el-icon-minus pointer" onClick={() => { this.deleClick(scope.$index, scope.row) }}></i> 61 <i class="el-icon-minus pointer" onClick={() => { this.deleClick(scope.$index, scope.row) }}></i>
61 } 62 }
62 </div> 63 </div>
...@@ -88,7 +89,7 @@ ...@@ -88,7 +89,7 @@
88 return ( 89 return (
89 <div> 90 <div>
90 { 91 {
91 this.$route.query.viewtype == 1 ? <el-button 92 this.isDisabled? <el-button
92 icon="el-icon-view" 93 icon="el-icon-view"
93 type="text" 94 type="text"
94 onClick={() => { this.queryViewClick(scope.$index, scope.row) }} disabled={this.isDisabled}>查看</el-button> : <el-button 95 onClick={() => { this.queryViewClick(scope.$index, scope.row) }} disabled={this.isDisabled}>查看</el-button> : <el-button
......
1 <!-- 1 <!--
2 * @Description: 2 * @Description:
3 * @Autor: renchao 3 * @Autor: renchao
4 * @LastEditTime: 2023-07-04 16:05:44 4 * @LastEditTime: 2023-07-04 16:05:44
5 --> 5 -->
...@@ -74,7 +74,7 @@ ...@@ -74,7 +74,7 @@
74 return ( 74 return (
75 <div> 75 <div>
76 { 76 {
77 this.$route.query.viewtype == 1 ? '序号' : 77 this.ableOperation? '序号' :
78 <i 78 <i
79 class="el-icon-plus pointer" 79 class="el-icon-plus pointer"
80 onClick={() => { 80 onClick={() => {
...@@ -91,7 +91,7 @@ ...@@ -91,7 +91,7 @@
91 return ( 91 return (
92 <div> 92 <div>
93 { 93 {
94 this.$route.query.viewtype == 1 ? <span>{scope.$index + 1}</span> : 94 this.ableOperation? <span>{scope.$index + 1}</span> :
95 <i 95 <i
96 class="el-icon-minus pointer" 96 class="el-icon-minus pointer"
97 97
...@@ -536,4 +536,4 @@ ...@@ -536,4 +536,4 @@
536 } 536 }
537 } 537 }
538 } 538 }
539 </style>
...\ No newline at end of file ...\ No newline at end of file
539 </style>
......
...@@ -23,7 +23,7 @@ ...@@ -23,7 +23,7 @@
23 </div> 23 </div>
24 </div> 24 </div>
25 <el-button type="primary" native-type="submit" style="width:100%" @click="handleAdd()" 25 <el-button type="primary" native-type="submit" style="width:100%" @click="handleAdd()"
26 v-if="!this.$route.query.viewtype && ableOperation">新增</el-button> 26 v-if="ableOperation">新增</el-button>
27 </div> 27 </div>
28 <image-preview ref='imageRef' v-if="tableData.length>0" :previewImg="previewImg" :ableOperation="ableOperation" @updateList="updateList" 28 <image-preview ref='imageRef' v-if="tableData.length>0" :previewImg="previewImg" :ableOperation="ableOperation" @updateList="updateList"
29 @nextPriview="nextPriview" 29 @nextPriview="nextPriview"
...@@ -71,7 +71,7 @@ ...@@ -71,7 +71,7 @@
71 }, 71 },
72 mounted() { 72 mounted() {
73 this.ableOperation=this.$parent.ableOperation 73 this.ableOperation=this.$parent.ableOperation
74 }, 74 },
75 methods: { 75 methods: {
76 // 自动预览 76 // 自动预览
77 nextPriview () { 77 nextPriview () {
......
1 <!-- 1 <!--
2 * @Description: 2 * @Description:
3 * @Autor: renchao 3 * @Autor: renchao
4 * @LastEditTime: 2023-05-17 10:39:57 4 * @LastEditTime: 2023-05-17 10:39:57
5 --> 5 -->
...@@ -275,4 +275,4 @@ ...@@ -275,4 +275,4 @@
275 margin-bottom: -1px; 275 margin-bottom: -1px;
276 } 276 }
277 } 277 }
278 </style>
...\ No newline at end of file ...\ No newline at end of file
278 </style>
......
1 <!-- 1 <!--
2 * @Description: 功能:流程图 2 * @Description: 流程图
3 * @Autor: renchao 3 * @Autor: renchao
4 * @LastEditTime: 2023-05-17 10:40:57 4 * @LastEditTime: 2023-07-19 16:04:34
5 --> 5 -->
6 <template> 6 <template>
7 <div class='flowChart'> 7 <div class='flowChart'>
......
...@@ -8,7 +8,7 @@ ...@@ -8,7 +8,7 @@
8 <lb-table :column="column" :pagination="false" :key="key" :heightNumSetting="true" :minHeight="150" 8 <lb-table :column="column" :pagination="false" :key="key" :heightNumSetting="true" :minHeight="150"
9 :data="tableDataList"> 9 :data="tableDataList">
10 </lb-table> 10 </lb-table>
11 <addQlr v-model="dialog" :details="details" :showButton="showButton" @updateDetail="handleupdateDetail" /> 11 <addQlr v-model="dialog" :details="details" :showButton="!isDisabled" @updateDetail="handleupdateDetail" />
12 </div> 12 </div>
13 </template> 13 </template>
14 <script> 14 <script>
...@@ -44,7 +44,6 @@ ...@@ -44,7 +44,6 @@
44 dataIndex: 0, 44 dataIndex: 0,
45 dialog: false, 45 dialog: false,
46 isaddupdate: false, 46 isaddupdate: false,
47 showButton: this.$route.query.viewtype ? false : true,
48 isDisabled: this.disabled, 47 isDisabled: this.disabled,
49 details: {}, 48 details: {},
50 tableDataList: [], 49 tableDataList: [],
...@@ -53,7 +52,7 @@ ...@@ -53,7 +52,7 @@
53 width: '50', 52 width: '50',
54 renderHeader: (h, scope) => { 53 renderHeader: (h, scope) => {
55 return <div> { 54 return <div> {
56 this.$route.query.viewtype == 1 ? '序号' : <i class="el-icon-plus pointer" onClick={() => { this.addClick() }}></i> 55 this.isDisabled? '序号' : <i class="el-icon-plus pointer" onClick={() => { this.addClick() }}></i>
57 } 56 }
58 </div> 57 </div>
59 }, 58 },
...@@ -61,7 +60,7 @@ ...@@ -61,7 +60,7 @@
61 return ( 60 return (
62 <div> 61 <div>
63 { 62 {
64 this.$route.query.viewtype == 1 ? <span>{scope.$index + 1}</span> : 63 this.isDisabled? <span>{scope.$index + 1}</span> :
65 <i class="el-icon-minus pointer" onClick={() => { this.deleClick(scope.$index, scope.row) }}></i> 64 <i class="el-icon-minus pointer" onClick={() => { this.deleClick(scope.$index, scope.row) }}></i>
66 } 65 }
67 </div> 66 </div>
...@@ -104,7 +103,7 @@ ...@@ -104,7 +103,7 @@
104 return ( 103 return (
105 <div> 104 <div>
106 { 105 {
107 this.$route.query.viewtype ? <el-button 106 this.isDisabled ? <el-button
108 icon="el-icon-view" 107 icon="el-icon-view"
109 type="text" 108 type="text"
110 onClick={() => { this.queryViewClick(scope.$index, scope.row) }} disabled={this.isDisabled} > 查看</el-button> : <el-button 109 onClick={() => { this.queryViewClick(scope.$index, scope.row) }} disabled={this.isDisabled} > 查看</el-button> : <el-button
...@@ -239,7 +238,7 @@ ...@@ -239,7 +238,7 @@
239 /deep/.el-table th { 238 /deep/.el-table th {
240 height: 30px !important; 239 height: 30px !important;
241 } 240 }
242 /deep/.el-table--small .el-table__cell { 241 /deep/.el-table .cell {
243 padding: 3px; 242 padding-right: 12px;
244 } 243 }
245 </style> 244 </style>
......
...@@ -83,11 +83,7 @@ ...@@ -83,11 +83,7 @@
83 }, 83 },
84 }, 84 },
85 mounted () { 85 mounted () {
86 this.propsParam.isEdit=this.$parent.isEdit 86 this.ableOperation = this.$parent.ableOperation;
87 this.propsParam = this.$attrs;
88 if (this.$route.query.viewtype) {
89 this.ableOperation = false
90 }
91 this.list(); 87 this.list();
92 }, 88 },
93 methods: { 89 methods: {
...@@ -98,7 +94,7 @@ ...@@ -98,7 +94,7 @@
98 var formdata = new FormData(); 94 var formdata = new FormData();
99 formdata.append("bsmBusiness", this.propsParam.bsmBusiness); 95 formdata.append("bsmBusiness", this.propsParam.bsmBusiness);
100 formdata.append("bestepid", this.$route.query.bestepid); 96 formdata.append("bestepid", this.$route.query.bestepid);
101 formdata.append("ableOperation", this.ableOperation) 97 // formdata.append("ableOperation", this.ableOperation)
102 getSpyjList(formdata).then((res) => { 98 getSpyjList(formdata).then((res) => {
103 this.$endLoading() 99 this.$endLoading()
104 if (res.code === 200 && res.result) { 100 if (res.code === 200 && res.result) {
......
1 <!-- 1 <!--
2 * @Description: 2 * @Description:
3 * @Autor: renchao 3 * @Autor: renchao
4 * @LastEditTime: 2023-07-17 13:51:09 4 * @LastEditTime: 2023-07-17 13:51:09
5 --> 5 -->
...@@ -41,7 +41,7 @@ ...@@ -41,7 +41,7 @@
41 width: '50', 41 width: '50',
42 renderHeader: (h, scope) => { 42 renderHeader: (h, scope) => {
43 return <div> { 43 return <div> {
44 this.$route.query.viewtype == 1 ? '序号' : <i class="el-icon-plus pointer" onClick={() => { this.handleAdd() }}></i> 44 this.ableOperation ? '序号' : <i class="el-icon-plus pointer" onClick={() => { this.handleAdd() }}></i>
45 } 45 }
46 </div> 46 </div>
47 }, 47 },
...@@ -49,7 +49,7 @@ ...@@ -49,7 +49,7 @@
49 return ( 49 return (
50 <div> 50 <div>
51 { 51 {
52 this.$route.query.viewtype == 1 ? <span>{scope.$index + 1}</span> : 52 this.ableOperation ? <span>{scope.$index + 1}</span> :
53 <i class="el-icon-minus pointer" onClick={() => { this.handleMinus(scope.$index, scope.row) }}></i> 53 <i class="el-icon-minus pointer" onClick={() => { this.handleMinus(scope.$index, scope.row) }}></i>
54 } 54 }
55 </div> 55 </div>
......
...@@ -281,7 +281,5 @@ ...@@ -281,7 +281,5 @@
281 /deep/.el-table th { 281 /deep/.el-table th {
282 height: 30px !important; 282 height: 30px !important;
283 } 283 }
284 /deep/.el-table--small .el-table__cell { 284
285 padding: 5px;
286 }
287 </style> 285 </style>
......
...@@ -63,7 +63,7 @@ ...@@ -63,7 +63,7 @@
63 import { getStepFormInfo, unClaimTask } from "@/api/workFlow.js" 63 import { getStepFormInfo, unClaimTask } from "@/api/workFlow.js"
64 import { getForm } from "./flowform" 64 import { getForm } from "./flowform"
65 import NoticeBar from "@/components/NoticeBar/index" 65 import NoticeBar from "@/components/NoticeBar/index"
66 import ProcessViewer from "./components/processViewer.vue" 66 // import ProcessViewer from "./components/processViewer.vue"
67 // 引入左侧菜单 67 // 引入左侧菜单
68 import ordinaryMenu from "./components/leftmenu/ordinaryMenu.vue" 68 import ordinaryMenu from "./components/leftmenu/ordinaryMenu.vue"
69 // 引入左侧菜单 69 // 引入左侧菜单
...@@ -73,7 +73,6 @@ ...@@ -73,7 +73,6 @@
73 components: { 73 components: {
74 selectBdc, 74 selectBdc,
75 NoticeBar, 75 NoticeBar,
76 ProcessViewer,
77 ordinaryMenu, 76 ordinaryMenu,
78 segmentMenu 77 segmentMenu
79 }, 78 },
......
...@@ -64,12 +64,12 @@ ...@@ -64,12 +64,12 @@
64 <el-row :gutter="10"> 64 <el-row :gutter="10">
65 <el-col :span="8"> 65 <el-col :span="8">
66 <el-form-item :class="flag ? 'marginBot0' : ''" label="查封机关:" prop="cfdj.cfjg"> 66 <el-form-item :class="flag ? 'marginBot0' : ''" label="查封机关:" prop="cfdj.cfjg">
67 <el-input v-model="ruleForm.cfdjList[0].cfjg" :disabled="$route.query.viewtype || isJfOperation"></el-input> 67 <el-input v-model="ruleForm.cfdjList[0].cfjg" :disabled="!ableOperation|| isJfOperation"></el-input>
68 </el-form-item> 68 </el-form-item>
69 </el-col> 69 </el-col>
70 <el-col :span="8"> 70 <el-col :span="8">
71 <el-form-item :class="flag ? 'marginBot0' : ''" label="查封文号:" prop="cfdj.cfwh"> 71 <el-form-item :class="flag ? 'marginBot0' : ''" label="查封文号:" prop="cfdj.cfwh">
72 <el-input v-model="ruleForm.cfdjList[0].cfwh" :disabled="$route.query.viewtype || isJfOperation"></el-input> 72 <el-input v-model="ruleForm.cfdjList[0].cfwh" :disabled="!ableOperation|| isJfOperation"></el-input>
73 </el-form-item> 73 </el-form-item>
74 </el-col> 74 </el-col>
75 <!-- 批量查封状态有多种查封类型,不予展示 --> 75 <!-- 批量查封状态有多种查封类型,不予展示 -->
...@@ -82,19 +82,19 @@ ...@@ -82,19 +82,19 @@
82 <el-row :gutter="10"> 82 <el-row :gutter="10">
83 <el-col :span="8"> 83 <el-col :span="8">
84 <el-form-item :class="flag ? 'marginBot0' : ''" label="查封期限:" prop="cfdj.cfqx"> 84 <el-form-item :class="flag ? 'marginBot0' : ''" label="查封期限:" prop="cfdj.cfqx">
85 <el-input v-model="ruleForm.cfdjList[0].cfqx" :disabled="$route.query.viewtype || isJfOperation"></el-input> 85 <el-input v-model="ruleForm.cfdjList[0].cfqx" :disabled="!ableOperation|| isJfOperation"></el-input>
86 </el-form-item> 86 </el-form-item>
87 </el-col> 87 </el-col>
88 <el-col :span="8"> 88 <el-col :span="8">
89 <el-form-item :class="flag ? 'marginBot0' : ''" label="查封起始时间:" prop="cfdj.cfqssj"> 89 <el-form-item :class="flag ? 'marginBot0' : ''" label="查封起始时间:" prop="cfdj.cfqssj">
90 <el-date-picker v-model="ruleForm.cfdjList[0].cfqssj" class="width100" type="date" placeholder="选择日期" 90 <el-date-picker v-model="ruleForm.cfdjList[0].cfqssj" class="width100" type="date" placeholder="选择日期"
91 value-format="yyyy-MM-dd" :disabled="$route.query.viewtype || isJfOperation"></el-date-picker> 91 value-format="yyyy-MM-dd" :disabled="!ableOperation|| isJfOperation"></el-date-picker>
92 </el-form-item> 92 </el-form-item>
93 </el-col> 93 </el-col>
94 <el-col :span="8"> 94 <el-col :span="8">
95 <el-form-item :class="flag ? 'marginBot0' : ''" label="查封结束时间:" prop="cfdj.cfjssj"> 95 <el-form-item :class="flag ? 'marginBot0' : ''" label="查封结束时间:" prop="cfdj.cfjssj">
96 <el-date-picker v-model="ruleForm.cfdjList[0].cfjssj" class="width100" 96 <el-date-picker v-model="ruleForm.cfdjList[0].cfjssj" class="width100"
97 :disabled="$route.query.viewtype || isJfOperation" type="date" placeholder="选择日期" 97 :disabled="!ableOperation|| isJfOperation" type="date" placeholder="选择日期"
98 value-format="yyyy-MM-dd"></el-date-picker> 98 value-format="yyyy-MM-dd"></el-date-picker>
99 </el-form-item> 99 </el-form-item>
100 </el-col> 100 </el-col>
...@@ -102,19 +102,19 @@ ...@@ -102,19 +102,19 @@
102 <el-row :gutter="10"> 102 <el-row :gutter="10">
103 <el-col :span="8"> 103 <el-col :span="8">
104 <el-form-item :class="flag ? 'marginBot0' : ''" label="查封文件:" prop="cfdj.cfwj"> 104 <el-form-item :class="flag ? 'marginBot0' : ''" label="查封文件:" prop="cfdj.cfwj">
105 <el-input v-model="ruleForm.cfdjList[0].cfwj" :disabled="$route.query.viewtype || isJfOperation"></el-input> 105 <el-input v-model="ruleForm.cfdjList[0].cfwj" :disabled="!ableOperation|| isJfOperation"></el-input>
106 </el-form-item> 106 </el-form-item>
107 </el-col> 107 </el-col>
108 <el-col :span="16"> 108 <el-col :span="16">
109 <el-form-item :class="flag ? 'marginBot0' : ''" label="查封范围:" prop="cfdj.cffw"> 109 <el-form-item :class="flag ? 'marginBot0' : ''" label="查封范围:" prop="cfdj.cffw">
110 <el-input v-model="ruleForm.cfdjList[0].cffw" :disabled="$route.query.viewtype || isJfOperation"></el-input> 110 <el-input v-model="ruleForm.cfdjList[0].cffw" :disabled="!ableOperation|| isJfOperation"></el-input>
111 </el-form-item> 111 </el-form-item>
112 </el-col> 112 </el-col>
113 </el-row> 113 </el-row>
114 <el-row :gutter="10"> 114 <el-row :gutter="10">
115 <el-col :span="24"> 115 <el-col :span="24">
116 <el-form-item :class="flag ? 'marginBot0' : ''" label="附记:" prop="cfdj.fj"> 116 <el-form-item :class="flag ? 'marginBot0' : ''" label="附记:" prop="cfdj.fj">
117 <el-input v-model="ruleForm.cfdjList[0].fj" type="textarea" :disabled="$route.query.viewtype || isJfOperation"> 117 <el-input v-model="ruleForm.cfdjList[0].fj" type="textarea" :disabled="!ableOperation|| isJfOperation">
118 </el-input> 118 </el-input>
119 </el-form-item> 119 </el-form-item>
120 </el-col> 120 </el-col>
...@@ -123,7 +123,7 @@ ...@@ -123,7 +123,7 @@
123 <el-col> 123 <el-col>
124 <el-form-item :class="flag ? 'marginBot0' : ''" label="登记原因:" prop="cfdj.djyy"> 124 <el-form-item :class="flag ? 'marginBot0' : ''" label="登记原因:" prop="cfdj.djyy">
125 <el-input class="textArea" type="textarea" v-model="ruleForm.cfdjList[0].djyy" 125 <el-input class="textArea" type="textarea" v-model="ruleForm.cfdjList[0].djyy"
126 :disabled="$route.query.viewtype || isJfOperation"></el-input> 126 :disabled="!ableOperation|| isJfOperation"></el-input>
127 </el-form-item> 127 </el-form-item>
128 </el-col> 128 </el-col>
129 </el-row> 129 </el-row>
...@@ -135,23 +135,23 @@ ...@@ -135,23 +135,23 @@
135 <el-row :gutter="10"> 135 <el-row :gutter="10">
136 <el-col :span="8"> 136 <el-col :span="8">
137 <el-form-item :class="flag ? 'marginBot0' : ''" label="解封机关:" prop="cfdj.jfjg"> 137 <el-form-item :class="flag ? 'marginBot0' : ''" label="解封机关:" prop="cfdj.jfjg">
138 <el-input v-model="ruleForm.cfdjList[0].jfjg" :disabled="$route.query.viewtype"></el-input> 138 <el-input v-model="ruleForm.cfdjList[0].jfjg" :disabled="!ableOperation"></el-input>
139 </el-form-item> 139 </el-form-item>
140 </el-col> 140 </el-col>
141 <el-col :span="8"> 141 <el-col :span="8">
142 <el-form-item :class="flag ? 'marginBot0' : ''" label="解封文件:" prop="cfdj.jfwj"> 142 <el-form-item :class="flag ? 'marginBot0' : ''" label="解封文件:" prop="cfdj.jfwj">
143 <el-input v-model="ruleForm.cfdjList[0].jfwj" :disabled="$route.query.viewtype"></el-input> 143 <el-input v-model="ruleForm.cfdjList[0].jfwj" :disabled="!ableOperation"></el-input>
144 </el-form-item> 144 </el-form-item>
145 </el-col> 145 </el-col>
146 <el-col :span="8"> 146 <el-col :span="8">
147 <el-form-item :class="flag ? 'marginBot0' : ''" label="解封文号:" prop="cfdj.jfwh"> 147 <el-form-item :class="flag ? 'marginBot0' : ''" label="解封文号:" prop="cfdj.jfwh">
148 <el-input v-model="ruleForm.cfdjList[0].jfwh" :disabled="$route.query.viewtype"></el-input> 148 <el-input v-model="ruleForm.cfdjList[0].jfwh" :disabled="!ableOperation"></el-input>
149 </el-form-item> 149 </el-form-item>
150 </el-col> 150 </el-col>
151 </el-row> 151 </el-row>
152 </div> 152 </div>
153 </div> 153 </div>
154 <el-row class="btn" v-if="!$route.query.viewtype && ableOperation"> 154 <el-row class="btn" v-if="ableOperation">
155 <el-form-item :class="flag ? 'marginBot0' : ''"> 155 <el-form-item :class="flag ? 'marginBot0' : ''">
156 <el-button type="primary" @click="onSubmit">保存</el-button> 156 <el-button type="primary" @click="onSubmit">保存</el-button>
157 </el-form-item> 157 </el-form-item>
......
...@@ -152,14 +152,14 @@ ...@@ -152,14 +152,14 @@
152 <el-form-item :class="flag ? 'marginBot0' : ''" label="查封机关:" prop="cfdj.cfjg"> 152 <el-form-item :class="flag ? 'marginBot0' : ''" label="查封机关:" prop="cfdj.cfjg">
153 <el-input 153 <el-input
154 v-model="ruleForm.cfdj.cfjg" 154 v-model="ruleForm.cfdj.cfjg"
155 :disabled="$route.query.viewtype || ableEdit || isJfOperation"></el-input> 155 :disabled="!ableOperation || ableEdit || isJfOperation"></el-input>
156 </el-form-item> 156 </el-form-item>
157 </el-col> 157 </el-col>
158 <el-col :span="8"> 158 <el-col :span="8">
159 <el-form-item :class="flag ? 'marginBot0' : ''" label="查封文号:" prop="cfdj.cfwh"> 159 <el-form-item :class="flag ? 'marginBot0' : ''" label="查封文号:" prop="cfdj.cfwh">
160 <el-input 160 <el-input
161 v-model="ruleForm.cfdj.cfwh" 161 v-model="ruleForm.cfdj.cfwh"
162 :disabled="$route.query.viewtype || ableEdit || isJfOperation"></el-input> 162 :disabled="!ableOperation || ableEdit || isJfOperation"></el-input>
163 </el-form-item> 163 </el-form-item>
164 </el-col> 164 </el-col>
165 <el-col :span="8"> 165 <el-col :span="8">
...@@ -173,7 +173,7 @@ ...@@ -173,7 +173,7 @@
173 <el-form-item :class="flag ? 'marginBot0' : ''" label="查封期限:" prop="cfdj.cfqx"> 173 <el-form-item :class="flag ? 'marginBot0' : ''" label="查封期限:" prop="cfdj.cfqx">
174 <el-input 174 <el-input
175 v-model="ruleForm.cfdj.cfqx" 175 v-model="ruleForm.cfdj.cfqx"
176 :disabled="$route.query.viewtype || ableEdit || isJfOperation"></el-input> 176 :disabled="!ableOperation || ableEdit || isJfOperation"></el-input>
177 </el-form-item> 177 </el-form-item>
178 </el-col> 178 </el-col>
179 <el-col :span="8"> 179 <el-col :span="8">
...@@ -184,7 +184,7 @@ ...@@ -184,7 +184,7 @@
184 type="date" 184 type="date"
185 placeholder="选择日期" 185 placeholder="选择日期"
186 value-format="yyyy-MM-dd" 186 value-format="yyyy-MM-dd"
187 :disabled="$route.query.viewtype || ableEdit || isJfOperation"></el-date-picker> 187 :disabled="!ableOperation || ableEdit || isJfOperation"></el-date-picker>
188 </el-form-item> 188 </el-form-item>
189 </el-col> 189 </el-col>
190 <el-col :span="8"> 190 <el-col :span="8">
...@@ -192,7 +192,7 @@ ...@@ -192,7 +192,7 @@
192 <el-date-picker 192 <el-date-picker
193 v-model="ruleForm.cfdj.cfjssj" 193 v-model="ruleForm.cfdj.cfjssj"
194 class="width100" 194 class="width100"
195 :disabled="$route.query.viewtype || ableEdit || isJfOperation" 195 :disabled="!ableOperation || ableEdit || isJfOperation"
196 type="date" 196 type="date"
197 placeholder="选择日期" 197 placeholder="选择日期"
198 value-format="yyyy-MM-dd"></el-date-picker> 198 value-format="yyyy-MM-dd"></el-date-picker>
...@@ -204,14 +204,14 @@ ...@@ -204,14 +204,14 @@
204 <el-form-item :class="flag ? 'marginBot0' : ''" label="查封文件:" prop="cfdj.cfwj"> 204 <el-form-item :class="flag ? 'marginBot0' : ''" label="查封文件:" prop="cfdj.cfwj">
205 <el-input 205 <el-input
206 v-model="ruleForm.cfdj.cfwj" 206 v-model="ruleForm.cfdj.cfwj"
207 :disabled="$route.query.viewtype || ableEdit || isJfOperation"></el-input> 207 :disabled="!ableOperation || ableEdit || isJfOperation"></el-input>
208 </el-form-item> 208 </el-form-item>
209 </el-col> 209 </el-col>
210 <el-col :span="16"> 210 <el-col :span="16">
211 <el-form-item :class="flag ? 'marginBot0' : ''" label="查封范围:" prop="cfdj.cffw"> 211 <el-form-item :class="flag ? 'marginBot0' : ''" label="查封范围:" prop="cfdj.cffw">
212 <el-input 212 <el-input
213 v-model="ruleForm.cfdj.cffw" 213 v-model="ruleForm.cfdj.cffw"
214 :disabled="$route.query.viewtype || ableEdit || isJfOperation"></el-input> 214 :disabled="!ableOperation || ableEdit || isJfOperation"></el-input>
215 </el-form-item> 215 </el-form-item>
216 </el-col> 216 </el-col>
217 </el-row> 217 </el-row>
...@@ -221,7 +221,7 @@ ...@@ -221,7 +221,7 @@
221 <el-input 221 <el-input
222 v-model="ruleForm.cfdj.fj" 222 v-model="ruleForm.cfdj.fj"
223 type="textarea" 223 type="textarea"
224 :disabled="$route.query.viewtype || ableEdit || isJfOperation"></el-input> 224 :disabled="!ableOperation || ableEdit || isJfOperation"></el-input>
225 </el-form-item> 225 </el-form-item>
226 </el-col> 226 </el-col>
227 </el-row> 227 </el-row>
...@@ -232,7 +232,7 @@ ...@@ -232,7 +232,7 @@
232 class="textArea" 232 class="textArea"
233 type="textarea" 233 type="textarea"
234 v-model="ruleForm.cfdj.djyy" 234 v-model="ruleForm.cfdj.djyy"
235 :disabled="$route.query.viewtype || ableEdit || isJfOperation"></el-input> 235 :disabled="!ableOperation || ableEdit || isJfOperation"></el-input>
236 </el-form-item> 236 </el-form-item>
237 </el-col> 237 </el-col>
238 </el-row> 238 </el-row>
...@@ -246,27 +246,27 @@ ...@@ -246,27 +246,27 @@
246 <el-form-item :class="flag ? 'marginBot0' : ''" label="解封机关:" prop="cfdj.jfjg"> 246 <el-form-item :class="flag ? 'marginBot0' : ''" label="解封机关:" prop="cfdj.jfjg">
247 <el-input 247 <el-input
248 v-model="ruleForm.cfdj.jfjg" 248 v-model="ruleForm.cfdj.jfjg"
249 :disabled="$route.query.viewtype || ableEdit"></el-input> 249 :disabled="!ableOperation || ableEdit"></el-input>
250 </el-form-item> 250 </el-form-item>
251 </el-col> 251 </el-col>
252 <el-col :span="8"> 252 <el-col :span="8">
253 <el-form-item :class="flag ? 'marginBot0' : ''" label="解封文件:" prop="cfdj.jfwj"> 253 <el-form-item :class="flag ? 'marginBot0' : ''" label="解封文件:" prop="cfdj.jfwj">
254 <el-input 254 <el-input
255 v-model="ruleForm.cfdj.jfwj" 255 v-model="ruleForm.cfdj.jfwj"
256 :disabled="$route.query.viewtype || ableEdit"></el-input> 256 :disabled="!ableOperation || ableEdit"></el-input>
257 </el-form-item> 257 </el-form-item>
258 </el-col> 258 </el-col>
259 <el-col :span="8"> 259 <el-col :span="8">
260 <el-form-item :class="flag ? 'marginBot0' : ''" label="解封文号:" prop="cfdj.jfwh"> 260 <el-form-item :class="flag ? 'marginBot0' : ''" label="解封文号:" prop="cfdj.jfwh">
261 <el-input 261 <el-input
262 v-model="ruleForm.cfdj.jfwh" 262 v-model="ruleForm.cfdj.jfwh"
263 :disabled="$route.query.viewtype || ableEdit"></el-input> 263 :disabled="!ableOperation || ableEdit"></el-input>
264 </el-form-item> 264 </el-form-item>
265 </el-col> 265 </el-col>
266 </el-row> 266 </el-row>
267 </div> 267 </div>
268 </div> 268 </div>
269 <el-row class="btn" v-if="!$route.query.viewtype && !ableEdit"> 269 <el-row class="btn" v-if="ableOperation && !ableEdit">
270 <el-form-item :class="flag ? 'marginBot0' : ''"> 270 <el-form-item :class="flag ? 'marginBot0' : ''">
271 <el-button type="primary" @click="onSubmit">保存</el-button> 271 <el-button type="primary" @click="onSubmit">保存</el-button>
272 </el-form-item> 272 </el-form-item>
......
1 <!-- 1 <!--
2 * @Description: 2 * @Description:
3 * @Autor: renchao 3 * @Autor: renchao
4 * @LastEditTime: 2023-07-11 10:00:43 4 * @LastEditTime: 2023-07-11 10:00:43
5 --> 5 -->
...@@ -139,7 +139,7 @@ ...@@ -139,7 +139,7 @@
139 <el-form-item label="被担保主债权数额:"> 139 <el-form-item label="被担保主债权数额:">
140 <div style="display:flex"> 140 <div style="display:flex">
141 <el-input v-model="ruleForm.diyaq.bdbzzqse" :disabled="!ableOperation" style="width:500%"></el-input> 141 <el-input v-model="ruleForm.diyaq.bdbzzqse" :disabled="!ableOperation" style="width:500%"></el-input>
142 <el-select v-model="ruleForm.diyaq.jedw" :disabled="$route.query.viewtype == '1' && !ableOperation"> 142 <el-select v-model="ruleForm.diyaq.jedw" :disabled="!ableOperation">
143 <el-option v-for="item in dictData['A57']" :key="item.dcode" :label="item.dname" :value="item.dcode"> 143 <el-option v-for="item in dictData['A57']" :key="item.dcode" :label="item.dname" :value="item.dcode">
144 </el-option> 144 </el-option>
145 </el-select> 145 </el-select>
...@@ -170,7 +170,7 @@ ...@@ -170,7 +170,7 @@
170 <el-col :span="24"> 170 <el-col :span="24">
171 <el-form-item label="担保范围:"> 171 <el-form-item label="担保范围:">
172 <el-input v-model="ruleForm.diyaq.dbfw" 172 <el-input v-model="ruleForm.diyaq.dbfw"
173 :disabled="($route.query.viewtype == 1 || ruleForm.sldy.djlx == '300') && !ableOperation"></el-input> 173 :disabled="ruleForm.sldy.djlx == '300'&& !ableOperation"></el-input>
174 </el-form-item> 174 </el-form-item>
175 </el-col> 175 </el-col>
176 </el-row> 176 </el-row>
...@@ -184,7 +184,7 @@ ...@@ -184,7 +184,7 @@
184 <el-row> 184 <el-row>
185 <el-col> 185 <el-col>
186 <el-form-item label="附记:" prop="fj"> 186 <el-form-item label="附记:" prop="fj">
187 <el-input type="textarea" v-model="ruleForm.diyaq.fj" :disabled="$route.query.viewtype == 1 && !ableOperation"></el-input> 187 <el-input type="textarea" v-model="ruleForm.diyaq.fj" :disabled="!ableOperation"></el-input>
188 </el-form-item> 188 </el-form-item>
189 </el-col> 189 </el-col>
190 </el-row> 190 </el-row>
...@@ -196,7 +196,7 @@ ...@@ -196,7 +196,7 @@
196 <el-row :gutter="10"> 196 <el-row :gutter="10">
197 <el-col :span="14"> 197 <el-col :span="14">
198 <el-form-item label="共有方式:"> 198 <el-form-item label="共有方式:">
199 <el-radio-group :disabled="$route.query.viewtype == 1 && !ableOperation" v-model="ruleForm.sldy.gyfs"> 199 <el-radio-group :disabled="!ableOperation" v-model="ruleForm.sldy.gyfs">
200 <el-radio label="0">单独所有</el-radio> 200 <el-radio label="0">单独所有</el-radio>
201 <el-radio label="1">共同共有</el-radio> 201 <el-radio label="1">共同共有</el-radio>
202 <el-radio label="2">按份所有</el-radio> 202 <el-radio label="2">按份所有</el-radio>
...@@ -222,13 +222,13 @@ ...@@ -222,13 +222,13 @@
222 </el-col> 222 </el-col>
223 </el-row> 223 </el-row>
224 <qlrCommonTable :tableData="ruleForm.qlrList" :disabled="!ableOperation" @upDateQlrxxList="upDateQlrxxList" 224 <qlrCommonTable :tableData="ruleForm.qlrList" :disabled="!ableOperation" @upDateQlrxxList="upDateQlrxxList"
225 :viewtype="$route.query.viewtype" :gyfs="ruleForm.sldy.gyfs" /> 225 :viewtype="!ableOperation" :gyfs="ruleForm.sldy.gyfs" />
226 <div class="slxx_title title-block"> 226 <div class="slxx_title title-block">
227 抵押人信息 227 抵押人信息
228 <div class="triangle"></div> 228 <div class="triangle"></div>
229 </div> 229 </div>
230 <qlrCommonTable :tableData="ruleForm.ywrList" :disabled="!ableOperation" @upDateQlrxxList="upDateYwrxxList" 230 <qlrCommonTable :tableData="ruleForm.ywrList" :disabled="!ableOperation" @upDateQlrxxList="upDateYwrxxList"
231 :viewtype="$route.query.viewtype" /> 231 :viewtype="!ableOperation" />
232 232
233 <div class="slxx_title title-block"> 233 <div class="slxx_title title-block">
234 登记原因 234 登记原因
...@@ -237,12 +237,12 @@ ...@@ -237,12 +237,12 @@
237 <el-row :gutter="10"> 237 <el-row :gutter="10">
238 <el-col> 238 <el-col>
239 <el-form-item v-if="ruleForm.sldy.djlx == '400'" label="注销抵押原因:" prop="djyy"> 239 <el-form-item v-if="ruleForm.sldy.djlx == '400'" label="注销抵押原因:" prop="djyy">
240 <el-input class="textArea" type="textarea" :disabled="$route.query.viewtype == 1 && !ableOperation" 240 <el-input class="textArea" type="textarea" :disabled="!ableOperation"
241 v-model="ruleForm.diyaq.zxdyyy"> 241 v-model="ruleForm.diyaq.zxdyyy">
242 </el-input> 242 </el-input>
243 </el-form-item> 243 </el-form-item>
244 <el-form-item v-else label="登记原因:" prop="djyy"> 244 <el-form-item v-else label="登记原因:" prop="djyy">
245 <el-input class="textArea" type="textarea" :disabled="$route.query.viewtype == 1 && !ableOperation" 245 <el-input class="textArea" type="textarea" :disabled="!ableOperation"
246 v-model="ruleForm.diyaq.djyy"> 246 v-model="ruleForm.diyaq.djyy">
247 </el-input> 247 </el-input>
248 </el-form-item> 248 </el-form-item>
...@@ -250,7 +250,7 @@ ...@@ -250,7 +250,7 @@
250 </el-row> 250 </el-row>
251 251
252 </div> 252 </div>
253 <el-row class="btn" v-if="!$route.query.viewtype && ableOperation"> 253 <el-row class="btn" v-if="ableOperation">
254 <el-form-item> 254 <el-form-item>
255 <el-button type="primary" @click="onSubmitClick()">保存</el-button> 255 <el-button type="primary" @click="onSubmitClick()">保存</el-button>
256 </el-form-item> 256 </el-form-item>
......
1 <!-- 1 <!--
2 * @Description: 受理信息 2 * @Description: 受理信息
3 * @Autor: renchao 3 * @Autor: renchao
4 * @LastEditTime: 2023-07-19 14:43:59 4 * @LastEditTime: 2023-07-20 09:30:06
5 --> 5 -->
6 <template> 6 <template>
7 <div class="slxx"> 7 <div class="slxx">
...@@ -141,7 +141,7 @@ ...@@ -141,7 +141,7 @@
141 <el-row :gutter="10"> 141 <el-row :gutter="10">
142 <el-col :span="14" v-if="ruleForm.qlxx"> 142 <el-col :span="14" v-if="ruleForm.qlxx">
143 <el-form-item label="共有方式:"> 143 <el-form-item label="共有方式:">
144 <el-radio-group :disabled="$route.query.viewtype == 1 && !ableOperation" @change="showCZInfo" 144 <el-radio-group :disabled="!ableOperation" @change="showCZInfo"
145 v-model="ruleForm.sldy.gyfs"> 145 v-model="ruleForm.sldy.gyfs">
146 <el-radio label="0">单独所有</el-radio> 146 <el-radio label="0">单独所有</el-radio>
147 <el-radio label="1">共同共有</el-radio> 147 <el-radio label="1">共同共有</el-radio>
...@@ -194,14 +194,14 @@ ...@@ -194,14 +194,14 @@
194 <el-row :gutter="10"> 194 <el-row :gutter="10">
195 <el-col> 195 <el-col>
196 <el-form-item v-if="ruleForm.sldy" label="登记原因:" prop="djyy"> 196 <el-form-item v-if="ruleForm.sldy" label="登记原因:" prop="djyy">
197 <el-input class="textArea" type="textarea" :disabled="$route.query.viewtype == 1 && !ableOperation" 197 <el-input class="textArea" type="textarea" :disabled="!ableOperation"
198 v-model="ruleForm.fdcq2.djyy"> 198 v-model="ruleForm.fdcq2.djyy">
199 </el-input> 199 </el-input>
200 </el-form-item> 200 </el-form-item>
201 </el-col> 201 </el-col>
202 </el-row> 202 </el-row>
203 </div> 203 </div>
204 <el-row class="btn" v-if="!$route.query.viewtype && ableOperation"> 204 <el-row class="btn" v-if="ableOperation">
205 <el-form-item> 205 <el-form-item>
206 <el-button type="primary" @click="onSubmit">保存</el-button> 206 <el-button type="primary" @click="onSubmit">保存</el-button>
207 </el-form-item> 207 </el-form-item>
......
1 <!-- 1 <!--
2 * @Description: 受理信息 2 * @Description: 受理信息
3 * @Autor: renchao 3 * @Autor: renchao
4 * @LastEditTime: 2023-07-14 11:18:17 4 * @LastEditTime: 2023-07-20 09:30:11
5 --> 5 -->
6 <template> 6 <template>
7 <div class="slxx"> 7 <div class="slxx">
...@@ -153,7 +153,7 @@ ...@@ -153,7 +153,7 @@
153 <el-row :gutter="10"> 153 <el-row :gutter="10">
154 <el-col :span="14"> 154 <el-col :span="14">
155 <el-form-item label="共有方式:"> 155 <el-form-item label="共有方式:">
156 <el-radio-group :disabled="$route.query.viewtype == 1 && !ableOperation" v-model="ruleForm.sldy.gyfs"> 156 <el-radio-group :disabled="!ableOperation" v-model="ruleForm.sldy.gyfs">
157 <el-radio label="0">单独所有</el-radio> 157 <el-radio label="0">单独所有</el-radio>
158 <el-radio label="1">共同共有</el-radio> 158 <el-radio label="1">共同共有</el-radio>
159 <el-radio label="2">按份所有</el-radio> 159 <el-radio label="2">按份所有</el-radio>
...@@ -187,14 +187,14 @@ ...@@ -187,14 +187,14 @@
187 <el-row :gutter="10"> 187 <el-row :gutter="10">
188 <el-col> 188 <el-col>
189 <el-form-item v-if="ruleForm.fdcq2" label="登记原因:" prop="djyy"> 189 <el-form-item v-if="ruleForm.fdcq2" label="登记原因:" prop="djyy">
190 <el-input class="textArea" type="textarea" :disabled="$route.query.viewtype == 1 && !ableOperation" 190 <el-input class="textArea" type="textarea" :disabled="!ableOperation"
191 v-model="ruleForm.fdcq2.djyy"> 191 v-model="ruleForm.fdcq2.djyy">
192 </el-input> 192 </el-input>
193 </el-form-item> 193 </el-form-item>
194 </el-col> 194 </el-col>
195 </el-row> 195 </el-row>
196 </div> 196 </div>
197 <el-row class="btn" v-if="!$route.query.viewtype && ableOperation"> 197 <el-row class="btn" v-if="ableOperation">
198 <el-form-item> 198 <el-form-item>
199 <el-button type="primary" @click="onSubmit">保存</el-button> 199 <el-button type="primary" @click="onSubmit">保存</el-button>
200 </el-form-item> 200 </el-form-item>
......
1 <!-- 1 <!--
2 * @Description: 受理信息 2 * @Description: 受理信息
3 * @Autor: renchao 3 * @Autor: renchao
4 * @LastEditTime: 2023-05-25 08:41:40 4 * @LastEditTime: 2023-07-20 09:30:21
5 --> 5 -->
6 <template> 6 <template>
7 <div class="slxx"> 7 <div class="slxx">
8 <el-form :model="ruleForm" :rules="rules" ref="ruleForm" :label-position="flag ? 'top' : ''" :inline="flag" 8 <el-form :model="ruleForm" :rules="rules" ref="ruleForm" :label-position="flag ? 'top' : ''" :inline="flag"
9 label-width="120px"> 9 label-width="120px">
10 <div class="slxx_con" :class="flag ? 'formMarginBot0' : ''"> 10 <div class="slxx_con" :class="flag ? 'formMarginBot0' : ''">
11 <div class="slxx_title title-block"> 11 <div class="slxx_title title-block">
12 受理信息 12 受理信息
...@@ -101,8 +101,8 @@ ...@@ -101,8 +101,8 @@
101 <el-row :gutter="10"> 101 <el-row :gutter="10">
102 <el-col :span="14"> 102 <el-col :span="14">
103 <el-form-item label="共有方式:"> 103 <el-form-item label="共有方式:">
104 <el-radio-group :disabled="$route.query.viewtype == 1" @change="showCZInfo" 104 <el-radio-group :disabled="!ableOperation" @change="showCZInfo"
105 v-model="ruleForm.sldyList[0].gyfs"> 105 v-model="ruleForm.sldyList[0].gyfs">
106 <el-radio label="0">单独所有</el-radio> 106 <el-radio label="0">单独所有</el-radio>
107 <el-radio label="1">共同共有</el-radio> 107 <el-radio label="1">共同共有</el-radio>
108 <el-radio label="2">按份所有</el-radio> 108 <el-radio label="2">按份所有</el-radio>
...@@ -111,7 +111,6 @@ ...@@ -111,7 +111,6 @@
111 </el-form-item> 111 </el-form-item>
112 </el-col> 112 </el-col>
113 113
114
115 <el-col :span="5" v-show=" ruleForm.slsq.gyfs == '2'"> 114 <el-col :span="5" v-show=" ruleForm.slsq.gyfs == '2'">
116 <el-form-item label="是否分别持证:"> 115 <el-form-item label="是否分别持证:">
117 <el-radio-group v-model="ruleForm.sldyList[0].sqfbcz"> 116 <el-radio-group v-model="ruleForm.sldyList[0].sqfbcz">
...@@ -130,7 +129,7 @@ ...@@ -130,7 +129,7 @@
130 </el-col> 129 </el-col>
131 </el-row> 130 </el-row>
132 <qlrCommonTable @upDateQlrxxList="upDateQlrxxList" :tableData="ruleForm.qlrList" 131 <qlrCommonTable @upDateQlrxxList="upDateQlrxxList" :tableData="ruleForm.qlrList"
133 :gyfs="ruleForm.slsq.gyfs" /> 132 :gyfs="ruleForm.slsq.gyfs" />
134 <div class="slxx_title title-block"> 133 <div class="slxx_title title-block">
135 登记原因 134 登记原因
136 <div class="triangle"></div> 135 <div class="triangle"></div>
...@@ -138,14 +137,14 @@ ...@@ -138,14 +137,14 @@
138 <el-row :gutter="10"> 137 <el-row :gutter="10">
139 <el-col> 138 <el-col>
140 <el-form-item v-if="ruleForm.slsq" label="登记原因:" prop="djyy"> 139 <el-form-item v-if="ruleForm.slsq" label="登记原因:" prop="djyy">
141 <el-input class="textArea" type="textarea" :disabled="$route.query.viewtype == 1" 140 <el-input class="textArea" type="textarea" :disabled="!ableOperation"
142 v-model="ruleForm.fdcq2List[0].djyy"> 141 v-model="ruleForm.fdcq2List[0].djyy">
143 </el-input> 142 </el-input>
144 </el-form-item> 143 </el-form-item>
145 </el-col> 144 </el-col>
146 </el-row> 145 </el-row>
147 </div> 146 </div>
148 <el-row class="btn" v-if="!$route.query.viewtype && ableOperation"> 147 <el-row class="btn" v-if="ableOperation">
149 <el-form-item> 148 <el-form-item>
150 <el-button type="primary" @click="onSubmit">保存</el-button> 149 <el-button type="primary" @click="onSubmit">保存</el-button>
151 </el-form-item> 150 </el-form-item>
...@@ -154,192 +153,192 @@ ...@@ -154,192 +153,192 @@
154 </div> 153 </div>
155 </template> 154 </template>
156 <script> 155 <script>
157 import qlrCommonTable from "@/views/workflow/components/qlrCommonTable"; 156 import qlrCommonTable from "@/views/workflow/components/qlrCommonTable";
158 import {BatchInit, Init, saveBatchData, saveData} from "@/api/workflow/fwsyqFlow.js"; 157 import { BatchInit, Init, saveBatchData, saveData } from "@/api/workflow/fwsyqFlow.js";
159 import { mapGetters } from "vuex"; 158 import { mapGetters } from "vuex";
160 export default { 159 export default {
161 created(callbackfn, thisArg) { 160 created (callbackfn, thisArg) {
162 this.ableOperation = this.$parent.currentSelectTab.ableOperation 161 this.ableOperation = this.$parent.currentSelectTab.ableOperation
163 this.propsParam = this.$attrs; 162 this.propsParam = this.$attrs;
164 var formdata = new FormData(); 163 var formdata = new FormData();
165 formdata.append("bsmSldy", this.propsParam.bsmSldy); 164 formdata.append("bsmSldy", this.propsParam.bsmSldy);
166 formdata.append("djlx", this.propsParam.djlx); 165 formdata.append("djlx", this.propsParam.djlx);
167 formdata.append("bsmSlsq", this.bsmSlsq); 166 formdata.append("bsmSlsq", this.bsmSlsq);
168 formdata.append("isEdit", this.ableOperation); 167 formdata.append("isEdit", this.ableOperation);
169 BatchInit(formdata).then((res) => { 168 BatchInit(formdata).then((res) => {
170 if (res.code === 200 && res.result) { 169 if (res.code === 200 && res.result) {
171 this.ruleForm = res.result; 170 this.ruleForm = res.result;
172 this.splicingFdcq2Info(); 171 this.splicingFdcq2Info();
173 } 172 }
174 }); 173 });
175
176 },
177 components: { qlrCommonTable },
178 computed: {
179 ...mapGetters(["dictData", "flag"]),
180 },
181 data () {
182 return {
183 disabled: true,
184 tdytOption: [],
185 czrOptions: [],
186 ruleForm: {
187 cfdjList:[]//查封登记
188 ,diyaqList:[]//抵押权
189 ,fdcq2List:[]//房屋信息集合
190 ,qlrList:[]//权利人
191 ,ywrList:[]//义务人
192 ,qlxxList:[]//权利信息集合
193 ,sldyList:[]//受理不动产单元集合
194 ,slsq: {}//受理申请流程明细
195 ,flow: {}//受理申请流程明细
196 ,sqrList:[]//申请人
197 ,ssQlxxList:[]//上手权利信息
198 ,user:{}//用户
199 ,zdjbxx: {}//宗地基本信息
200 },
201 //传递参数
202 propsParam: this.$attrs,
203 //表单是否可操作
204 ableOperation: true,
205 rules: {},
206 bsmSlsq: this.$route.query.bsmSlsq,//受理申请标识码
207 splicingFdcq2:{//前端根据后台数组组装展示内容
208 fwxz:{}//房屋性质
209 ,fwjg:{}//房屋结构
210 ,jzmj:{} //建筑面积
211 ,zts:{}//房屋总套数
212 }
213 }
214 },
215 methods: {
216 //组装房地产权通用信息
217 splicingFdcq2Info(){
218 let fdcq2List = this.ruleForm.fdcq2List;
219 let fwxzArr = [];
220 let fwjgArr = [];
221 let jzmj = 0;
222 fdcq2List.forEach(fdcq2 => {
223 fwxzArr.push(fdcq2.fwxzmc);
224 fwjgArr.push(fdcq2.fwjgmc);
225 jzmj += parseFloat(fdcq2.jzmj);
226 })
227 //将数据转为字符串
228 //房屋性质
229 let fwxz = Array.from(new Set(fwxzArr)).join(",");
230 //房屋结构
231 let fwjg = Array.from(new Set(fwjgArr)).join(",");
232 this.splicingFdcq2.fwxz = fwxz;
233 this.splicingFdcq2.fwjg = fwjg;
234 this.splicingFdcq2.jzmj = jzmj==null ? 0 : jzmj;
235 this.splicingFdcq2.zts = fdcq2List.length;
236
237 },
238 174
239 // 更新权利人信息
240 upDateQlrxxList (val) {
241 this.ruleForm.qlrList = _.cloneDeep(val);
242 },
243 showCZInfo () {
244 console.log(this.ruleForm.slsq.gyfs);
245 }, 175 },
246 // 更新义务人信息 176 components: { qlrCommonTable },
247 upDateYwrxxList (val) { 177 computed: {
248 this.ruleForm.ywrList = _.cloneDeep(val); 178 ...mapGetters(["dictData", "flag"]),
249 }, 179 },
250 onSubmit () { 180 data () {
251 saveBatchData(this.ruleForm).then((res) => { 181 return {
252 if (res.code === 200) { 182 disabled: true,
253 this.$message({ 183 tdytOption: [],
254 showClose: true, 184 czrOptions: [],
255 message: "保存成功!", 185 ruleForm: {
256 type: "success", 186 cfdjList: []//查封登记
257 }); 187 , diyaqList: []//抵押权
258 this.$store.dispatch('user/refreshPage', true); 188 , fdcq2List: []//房屋信息集合
259 } else { 189 , qlrList: []//权利人
260 this.$message({ 190 , ywrList: []//义务人
261 showClose: true, 191 , qlxxList: []//权利信息集合
262 message: res.message, 192 , sldyList: []//受理不动产单元集合
263 type: "error" 193 , slsq: {}//受理申请流程明细
264 }) 194 , flow: {}//受理申请流程明细
195 , sqrList: []//申请人
196 , ssQlxxList: []//上手权利信息
197 , user: {}//用户
198 , zdjbxx: {}//宗地基本信息
199 },
200 //传递参数
201 propsParam: this.$attrs,
202 //表单是否可操作
203 ableOperation: true,
204 rules: {},
205 bsmSlsq: this.$route.query.bsmSlsq,//受理申请标识码
206 splicingFdcq2: {//前端根据后台数组组装展示内容
207 fwxz: {}//房屋性质
208 , fwjg: {}//房屋结构
209 , jzmj: {} //建筑面积
210 , zts: {}//房屋总套数
265 } 211 }
266 }) 212 }
213 },
214 methods: {
215 //组装房地产权通用信息
216 splicingFdcq2Info () {
217 let fdcq2List = this.ruleForm.fdcq2List;
218 let fwxzArr = [];
219 let fwjgArr = [];
220 let jzmj = 0;
221 fdcq2List.forEach(fdcq2 => {
222 fwxzArr.push(fdcq2.fwxzmc);
223 fwjgArr.push(fdcq2.fwjgmc);
224 jzmj += parseFloat(fdcq2.jzmj);
225 })
226 //将数据转为字符串
227 //房屋性质
228 let fwxz = Array.from(new Set(fwxzArr)).join(",");
229 //房屋结构
230 let fwjg = Array.from(new Set(fwjgArr)).join(",");
231 this.splicingFdcq2.fwxz = fwxz;
232 this.splicingFdcq2.fwjg = fwjg;
233 this.splicingFdcq2.jzmj = jzmj == null ? 0 : jzmj;
234 this.splicingFdcq2.zts = fdcq2List.length;
235
236 },
237
238 // 更新权利人信息
239 upDateQlrxxList (val) {
240 this.ruleForm.qlrList = _.cloneDeep(val);
241 },
242 showCZInfo () {
243 console.log(this.ruleForm.slsq.gyfs);
244 },
245 // 更新义务人信息
246 upDateYwrxxList (val) {
247 this.ruleForm.ywrList = _.cloneDeep(val);
248 },
249 onSubmit () {
250 saveBatchData(this.ruleForm).then((res) => {
251 if (res.code === 200) {
252 this.$message({
253 showClose: true,
254 message: "保存成功!",
255 type: "success",
256 });
257 this.$store.dispatch('user/refreshPage', true);
258 } else {
259 this.$message({
260 showClose: true,
261 message: res.message,
262 type: "error"
263 })
264 }
265 })
266 }
267 } 267 }
268 } 268 }
269 }
270 </script> 269 </script>
271 <style scoped lang='scss'> 270 <style scoped lang='scss'>
272 @import "~@/styles/public.scss"; 271 @import "~@/styles/public.scss";
273 272
274 /deep/.el-form { 273 /deep/.el-form {
275 display: flex; 274 display: flex;
276 flex-direction: column; 275 flex-direction: column;
277 height: calc(100vh - 130px); 276 height: calc(100vh - 130px);
278 } 277 }
279 278
280 /deep/.el-form-item__label { 279 /deep/.el-form-item__label {
281 padding: 0; 280 padding: 0;
282 } 281 }
283 282
284 /deep/.el-radio { 283 /deep/.el-radio {
285 margin-right: 10px; 284 margin-right: 10px;
286 } 285 }
287 286
288 /deep/.el-select { 287 /deep/.el-select {
289 width: 100%; 288 width: 100%;
290 } 289 }
291 290
292 /deep/.el-form-item { 291 /deep/.el-form-item {
293 margin-bottom: 8px; 292 margin-bottom: 8px;
294 } 293 }
295 294
296 .marginBot0 { 295 .marginBot0 {
297 margin-bottom: 0 !important; 296 margin-bottom: 0 !important;
298 } 297 }
299 298
300 .slxx { 299 .slxx {
301 box-sizing: border-box; 300 box-sizing: border-box;
302 } 301 }
303 302
304 .slxx_con { 303 .slxx_con {
305 flex: 1; 304 flex: 1;
306 height: 100%; 305 height: 100%;
307 background-color: #ffffff; 306 background-color: #ffffff;
308 overflow-y: auto; 307 overflow-y: auto;
309 padding-right: 3px; 308 padding-right: 3px;
310 overflow-x: hidden; 309 overflow-x: hidden;
311 } 310 }
312 311
313 .submit_btn { 312 .submit_btn {
314 height: 50px; 313 height: 50px;
315 } 314 }
316 315
317 .slxx_title { 316 .slxx_title {
318 border-bottom: 1px solid $borderColor; 317 border-bottom: 1px solid $borderColor;
319 padding-left: 10px; 318 padding-left: 10px;
320 padding-bottom: 5px; 319 padding-bottom: 5px;
321 margin-bottom: 10px; 320 margin-bottom: 10px;
322 margin-top: 5px; 321 margin-top: 5px;
323 font-size: 16px; 322 font-size: 16px;
324 font-weight: 500; 323 font-weight: 500;
325 color: #4a4a4a; 324 color: #4a4a4a;
326 } 325 }
327 326
328 .btn { 327 .btn {
329 text-align: center; 328 text-align: center;
330 padding-top: 10px; 329 padding-top: 10px;
331 height: 36px; 330 height: 36px;
332 background-color: #ffffff; 331 background-color: #ffffff;
333 padding: 5px 0; 332 padding: 5px 0;
334 } 333 }
335 334
336 .textArea { 335 .textArea {
337 /deep/.el-textarea__inner { 336 /deep/.el-textarea__inner {
338 min-height: 90px !important; 337 min-height: 90px !important;
338 }
339 } 339 }
340 }
341 340
342 /deep/.el-form-item__label { 341 /deep/.el-form-item__label {
343 padding-bottom: 0px; 342 padding-bottom: 0px;
344 } 343 }
345 </style> 344 </style>
......
1 <!-- 1 <!--
2 * @Description: 2 * @Description:
3 * @Autor: renchao 3 * @Autor: renchao
4 * @LastEditTime: 2023-07-11 10:08:11 4 * @LastEditTime: 2023-07-20 09:32:18
5 --> 5 -->
6 <template> 6 <template>
7 <!-- 受理信息 --> 7 <!-- 受理信息 -->
...@@ -139,7 +139,7 @@ ...@@ -139,7 +139,7 @@
139 <el-row :gutter="10"> 139 <el-row :gutter="10">
140 <el-col :span="14"> 140 <el-col :span="14">
141 <el-form-item label="共有方式:"> 141 <el-form-item label="共有方式:">
142 <el-radio-group :disabled="$route.query.viewtype == 1 && !ableOperation" v-model="ruleForm.gyfs"> 142 <el-radio-group :disabled="!ableOperation" v-model="ruleForm.gyfs">
143 <el-radio label="1">单独所有</el-radio> 143 <el-radio label="1">单独所有</el-radio>
144 <el-radio label="2">共同共有</el-radio> 144 <el-radio label="2">共同共有</el-radio>
145 <el-radio label="3">按份所有</el-radio> 145 <el-radio label="3">按份所有</el-radio>
...@@ -171,13 +171,13 @@ ...@@ -171,13 +171,13 @@
171 <el-row :gutter="10"> 171 <el-row :gutter="10">
172 <el-col> 172 <el-col>
173 <el-form-item label="登记原因:" prop="djyy"> 173 <el-form-item label="登记原因:" prop="djyy">
174 <el-input class="textArea" type="textarea" :disabled="$route.query.viewtype == 1 && !ableOperation" v-model="ruleForm.djyy"> 174 <el-input class="textArea" type="textarea" :disabled="!ableOperation" v-model="ruleForm.djyy">
175 </el-input> 175 </el-input>
176 </el-form-item> 176 </el-form-item>
177 </el-col> 177 </el-col>
178 </el-row> 178 </el-row>
179 </div> 179 </div>
180 <el-row class="btn" v-if="!$route.query.viewtype && ableOperation"> 180 <el-row class="btn" v-if="ableOperation">
181 <el-form-item> 181 <el-form-item>
182 <el-button type="primary" @click="onSubmit">保存</el-button> 182 <el-button type="primary" @click="onSubmit">保存</el-button>
183 </el-form-item> 183 </el-form-item>
......
...@@ -7,7 +7,7 @@ ...@@ -7,7 +7,7 @@
7 <!-- 受理信息 --> 7 <!-- 受理信息 -->
8 <div class="slxx"> 8 <div class="slxx">
9 <el-form :model="ruleForm" :rules="rules" :class="{readonly: editDisabled }" 9 <el-form :model="ruleForm" :rules="rules" :class="{readonly: editDisabled }"
10 class="loadingtext" ref="ruleForm" :label-position="flag ? 'top' : ''" 10 class="loadingtext" ref="ruleForm" :label-position="flag ? 'top' : ''"
11 :inline="flag" label-width="120px"> 11 :inline="flag" label-width="120px">
12 <div class="slxx_con" v-if="isShow" :class="flag ? 'formMarginBot0' : ''"> 12 <div class="slxx_con" v-if="isShow" :class="flag ? 'formMarginBot0' : ''">
13 <div class="slxx_title title-block"> 13 <div class="slxx_title title-block">
...@@ -128,7 +128,7 @@ ...@@ -128,7 +128,7 @@
128 <div class="triangle"></div> 128 <div class="triangle"></div>
129 </div> 129 </div>
130 <tdytTable 130 <tdytTable
131 :ableOperation="ableOperation" 131 :ableOperation="ableOperation"
132 :tableData="ruleForm.tdytqxList" 132 :tableData="ruleForm.tdytqxList"
133 @upDateTdytxxList="upDateTdytxxList" /> 133 @upDateTdytxxList="upDateTdytxxList" />
134 <div class="slxx_title title-block"> 134 <div class="slxx_title title-block">
...@@ -138,7 +138,7 @@ ...@@ -138,7 +138,7 @@
138 <el-row :gutter="10"> 138 <el-row :gutter="10">
139 <el-col :span="12"> 139 <el-col :span="12">
140 <el-form-item label="共有方式:"> 140 <el-form-item label="共有方式:">
141 <el-radio-group :disabled="$route.query.viewtype == 0 && !ableOperation" v-model="ruleForm.sldy.gyfs"> 141 <el-radio-group :disabled="!ableOperation" v-model="ruleForm.sldy.gyfs">
142 <el-radio label="0">单独所有</el-radio> 142 <el-radio label="0">单独所有</el-radio>
143 <el-radio label="1">共同共有</el-radio> 143 <el-radio label="1">共同共有</el-radio>
144 <el-radio label="2">按份所有</el-radio> 144 <el-radio label="2">按份所有</el-radio>
...@@ -165,16 +165,14 @@ ...@@ -165,16 +165,14 @@
165 </el-row> 165 </el-row>
166 <qlrCommonTable :tableData="ruleForm.qlrList" 166 <qlrCommonTable :tableData="ruleForm.qlrList"
167 :disabled="!ableOperation" 167 :disabled="!ableOperation"
168 @upDateQlrxxList="upDateQlrxxList" :key="key" 168 @upDateQlrxxList="upDateQlrxxList" :key="key" :gyfs="ruleForm.sldy.gyfs" />
169 :viewtype="$route.query.viewtype" :gyfs="ruleForm.sldy.gyfs" />
170 169
171 <div v-if="ruleForm.ywrList && ruleForm.ywrList.length > 0"> 170 <div v-if="ruleForm.ywrList && ruleForm.ywrList.length > 0">
172 <div class="slxx_title title-block"> 171 <div class="slxx_title title-block">
173 义务人信息 172 义务人信息
174 <div class="triangle"></div> 173 <div class="triangle"></div>
175 </div> 174 </div>
176 <qlrCommonTable v-if="ruleForm.ywrList" :disabled="!ableOperation" :tableData="ruleForm.ywrList" :key="key" @upDateQlrxxList="upDateYwrxxList" 175 <qlrCommonTable v-if="ruleForm.ywrList" :disabled="!ableOperation" :tableData="ruleForm.ywrList" :key="key" @upDateQlrxxList="upDateYwrxxList" />
177 :viewtype="$route.query.viewtype" />
178 </div> 176 </div>
179 177
180 <div class="slxx_title title-block"> 178 <div class="slxx_title title-block">
...@@ -184,14 +182,14 @@ ...@@ -184,14 +182,14 @@
184 <el-row :gutter="10"> 182 <el-row :gutter="10">
185 <el-col> 183 <el-col>
186 <el-form-item label="登记原因:" prop="djyy"> 184 <el-form-item label="登记原因:" prop="djyy">
187 <el-input class="textArea" type="textarea" :disabled="$route.query.viewtype && !ableOperation" 185 <el-input class="textArea" type="textarea" :disabled="!ableOperation"
188 v-model="ruleForm.jsydsyq.djyy"> 186 v-model="ruleForm.jsydsyq.djyy">
189 </el-input> 187 </el-input>
190 </el-form-item> 188 </el-form-item>
191 </el-col> 189 </el-col>
192 </el-row> 190 </el-row>
193 </div> 191 </div>
194 <el-row class="btn" v-if="!$route.query.viewtype && ableOperation"> 192 <el-row class="btn" v-if="ableOperation">
195 <el-form-item> 193 <el-form-item>
196 <el-button type="primary" @click="onSubmit">保存</el-button> 194 <el-button type="primary" @click="onSubmit">保存</el-button>
197 </el-form-item> 195 </el-form-item>
...@@ -226,14 +224,14 @@ ...@@ -226,14 +224,14 @@
226 components: { qlrCommonTable, tdytTable }, 224 components: { qlrCommonTable, tdytTable },
227 computed: { 225 computed: {
228 ...mapGetters(["dictData", "flag"]), 226 ...mapGetters(["dictData", "flag"]),
229 // 根据流程判断表单是否为只读 227 // 根据流程判断表单是否为只读
230 editDisabled() { 228 editDisabled () {
231 if (!this.ableOperation) { 229 if (!this.ableOperation) {
232 //只读状态 230 //只读状态
233 return true; 231 return true;
234 } 232 }
235 return false; 233 return false;
236 }, 234 },
237 }, 235 },
238 data () { 236 data () {
239 return { 237 return {
......
...@@ -121,7 +121,7 @@ ...@@ -121,7 +121,7 @@
121 <el-row :gutter="10"> 121 <el-row :gutter="10">
122 <el-col> 122 <el-col>
123 <el-form-item label="附记:" prop="fj"> 123 <el-form-item label="附记:" prop="fj">
124 <el-input type="textarea" v-model="ruleForm.jsydsyq.fj" :disabled="$route.query.viewtype=='1' && !ableOperation"></el-input> 124 <el-input type="textarea" v-model="ruleForm.jsydsyq.fj" :disabled="!ableOperation"></el-input>
125 </el-form-item> 125 </el-form-item>
126 </el-col> 126 </el-col>
127 </el-row> 127 </el-row>
...@@ -143,7 +143,7 @@ ...@@ -143,7 +143,7 @@
143 <el-row :gutter="10"> 143 <el-row :gutter="10">
144 <el-col :span="14"> 144 <el-col :span="14">
145 <el-form-item label="共有方式:"> 145 <el-form-item label="共有方式:">
146 <el-radio-group :disabled="$route.query.viewtype=='1' && !ableOperation" v-model="ruleForm.sldy.gyfs"> 146 <el-radio-group :disabled="!ableOperation" v-model="ruleForm.sldy.gyfs">
147 <el-radio label="0">单独所有</el-radio> 147 <el-radio label="0">单独所有</el-radio>
148 <el-radio label="1">共同共有</el-radio> 148 <el-radio label="1">共同共有</el-radio>
149 <el-radio label="2">按份所有</el-radio> 149 <el-radio label="2">按份所有</el-radio>
...@@ -168,8 +168,7 @@ ...@@ -168,8 +168,7 @@
168 </el-form-item> 168 </el-form-item>
169 </el-col> 169 </el-col>
170 </el-row> 170 </el-row>
171 <qlrCommonTable :tableData="ruleForm.qlrList" :disabled="!ableOperation" @upDateQlrxxList='upDateQlrxxList' 171 <qlrCommonTable :tableData="ruleForm.qlrList" :disabled="!ableOperation" @upDateQlrxxList='upDateQlrxxList' :gyfs="ruleForm.sldy.gyfs" />
172 :viewtype="$route.query.viewtype=='1'" :gyfs="ruleForm.sldy.gyfs" />
173 <div class="slxx_title title-block"> 172 <div class="slxx_title title-block">
174 登记原因 173 登记原因
175 <div class="triangle"></div> 174 <div class="triangle"></div>
...@@ -177,14 +176,14 @@ ...@@ -177,14 +176,14 @@
177 <el-row :gutter="10"> 176 <el-row :gutter="10">
178 <el-col> 177 <el-col>
179 <el-form-item label="登记原因:" prop="djyy"> 178 <el-form-item label="登记原因:" prop="djyy">
180 <el-input class="textArea" type="textarea" :disabled="$route.query.viewtype=='1' && !ableOperation" 179 <el-input class="textArea" type="textarea" :disabled="!ableOperation"
181 v-model="ruleForm.jsydsyq.djyy"> 180 v-model="ruleForm.jsydsyq.djyy">
182 </el-input> 181 </el-input>
183 </el-form-item> 182 </el-form-item>
184 </el-col> 183 </el-col>
185 </el-row> 184 </el-row>
186 </div> 185 </div>
187 <el-row class="btn" v-if="!$route.query.viewtype=='1' && ableOperation"> 186 <el-row class="btn" v-if="ableOperation">
188 <el-form-item> 187 <el-form-item>
189 <el-button type="primary" @click="onSubmit">保存</el-button> 188 <el-button type="primary" @click="onSubmit">保存</el-button>
190 </el-form-item> 189 </el-form-item>
......
...@@ -165,7 +165,7 @@ ...@@ -165,7 +165,7 @@
165 <el-row :gutter="10"> 165 <el-row :gutter="10">
166 <el-col> 166 <el-col>
167 <el-form-item label="附记:" prop="fj"> 167 <el-form-item label="附记:" prop="fj">
168 <el-input type="textarea" v-model="ruleForm.nydsyq.fj" :disabled="$route.query.viewtype && !ableOperation"></el-input> 168 <el-input type="textarea" v-model="ruleForm.nydsyq.fj" :disabled="!ableOperation"></el-input>
169 </el-form-item> 169 </el-form-item>
170 </el-col> 170 </el-col>
171 </el-row> 171 </el-row>
...@@ -176,7 +176,7 @@ ...@@ -176,7 +176,7 @@
176 <el-row :gutter="10"> 176 <el-row :gutter="10">
177 <el-col :span="14"> 177 <el-col :span="14">
178 <el-form-item label="共有方式:"> 178 <el-form-item label="共有方式:">
179 <el-radio-group v-model="ruleForm.sldy.gyfs" :disabled="$route.query.viewtype&& !ableOperation"> 179 <el-radio-group v-model="ruleForm.sldy.gyfs" :disabled="!ableOperation">
180 <el-radio label="0">单独所有</el-radio> 180 <el-radio label="0">单独所有</el-radio>
181 <el-radio label="1">共同共有</el-radio> 181 <el-radio label="1">共同共有</el-radio>
182 <el-radio label="2">按份所有</el-radio> 182 <el-radio label="2">按份所有</el-radio>
...@@ -201,14 +201,12 @@ ...@@ -201,14 +201,12 @@
201 </el-form-item> 201 </el-form-item>
202 </el-col> 202 </el-col>
203 </el-row> 203 </el-row>
204 <qlrCommonTable :tableData="ruleForm.qlrList" @upDateQlrxxList="upDateQlrxxList" :disabled="!ableOperation" 204 <qlrCommonTable :tableData="ruleForm.qlrList" @upDateQlrxxList="upDateQlrxxList" :disabled="!ableOperation" :gyfs="ruleForm.slywxx.gyfs" />
205 :viewtype="$route.query.viewtype" :gyfs="ruleForm.slywxx.gyfs" />
206 <div class="slxx_title title-block"> 205 <div class="slxx_title title-block">
207 家庭成员 206 家庭成员
208 <div class="triangle"></div> 207 <div class="triangle"></div>
209 </div> 208 </div>
210 <JtcyTable :tableData="ruleForm.jtcyList" @upDateJtcyList="upDateJtcyList" :viewtype="$route.query.viewtype" 209 <JtcyTable :tableData="ruleForm.jtcyList" @upDateJtcyList="upDateJtcyList" :disabled="!ableOperation" :gyfs="ruleForm.slywxx.gyfs" />
211 :gyfs="ruleForm.slywxx.gyfs" />
212 <div class="slxx_title title-block"> 210 <div class="slxx_title title-block">
213 登记原因 211 登记原因
214 <div class="triangle"></div> 212 <div class="triangle"></div>
...@@ -216,14 +214,14 @@ ...@@ -216,14 +214,14 @@
216 <el-row :gutter="10"> 214 <el-row :gutter="10">
217 <el-col> 215 <el-col>
218 <el-form-item label="登记原因:" prop="djyy"> 216 <el-form-item label="登记原因:" prop="djyy">
219 <el-input class="textArea" type="textarea" :disabled="$route.query.viewtype && ableOperation" 217 <el-input class="textArea" type="textarea" :disabled="!ableOperation"
220 v-model="ruleForm.nydsyq.djyy"> 218 v-model="ruleForm.nydsyq.djyy">
221 </el-input> 219 </el-input>
222 </el-form-item> 220 </el-form-item>
223 </el-col> 221 </el-col>
224 </el-row> 222 </el-row>
225 </div> 223 </div>
226 <el-row class="btn" v-if="!$route.query.viewtype && ableOperation"> 224 <el-row class="btn" v-if="ableOperation">
227 <el-form-item> 225 <el-form-item>
228 <el-button type="primary" @click="onSubmit">保存</el-button> 226 <el-button type="primary" @click="onSubmit">保存</el-button>
229 </el-form-item> 227 </el-form-item>
...@@ -327,4 +325,4 @@ ...@@ -327,4 +325,4 @@
327 <style scoped lang='scss'> 325 <style scoped lang='scss'>
328 @import "~@/styles/public.scss"; 326 @import "~@/styles/public.scss";
329 @import "~@/styles/slxx/slxx.scss"; 327 @import "~@/styles/slxx/slxx.scss";
330 </style>
...\ No newline at end of file ...\ No newline at end of file
328 </style>
......
...@@ -165,7 +165,7 @@ ...@@ -165,7 +165,7 @@
165 <el-row :gutter="10"> 165 <el-row :gutter="10">
166 <el-col> 166 <el-col>
167 <el-form-item label="附记:" prop="fj"> 167 <el-form-item label="附记:" prop="fj">
168 <el-input type="textarea" v-model="ruleForm.nydsyq.fj" :disabled="$route.query.viewtype == 1 && !ableOperation"></el-input> 168 <el-input type="textarea" v-model="ruleForm.nydsyq.fj" :disabled="!ableOperation"></el-input>
169 </el-form-item> 169 </el-form-item>
170 </el-col> 170 </el-col>
171 </el-row> 171 </el-row>
...@@ -176,7 +176,7 @@ ...@@ -176,7 +176,7 @@
176 <el-row :gutter="10"> 176 <el-row :gutter="10">
177 <el-col :span="14"> 177 <el-col :span="14">
178 <el-form-item label="共有方式:"> 178 <el-form-item label="共有方式:">
179 <el-radio-group :disabled="$route.query.viewtype == 1 && !ableOperation" v-model="ruleForm.sldy.gyfs"> 179 <el-radio-group :disabled="!ableOperation" v-model="ruleForm.sldy.gyfs">
180 <el-radio label="0">单独所有</el-radio> 180 <el-radio label="0">单独所有</el-radio>
181 <el-radio label="1">共同共有</el-radio> 181 <el-radio label="1">共同共有</el-radio>
182 <el-radio label="2">按份所有</el-radio> 182 <el-radio label="2">按份所有</el-radio>
...@@ -201,20 +201,17 @@ ...@@ -201,20 +201,17 @@
201 </el-form-item> 201 </el-form-item>
202 </el-col> 202 </el-col>
203 </el-row> 203 </el-row>
204 <qlrCommonTable :tableData="ruleForm.qlrList" @upDateQlrxxList="upDateQlrxxList" :disabled="!ableOperation" 204 <qlrCommonTable :tableData="ruleForm.qlrList" @upDateQlrxxList="upDateQlrxxList" :disabled="!ableOperation" :gyfs="ruleForm.sldy.gyfs" />
205 :viewtype="$route.query.viewtype" :gyfs="ruleForm.sldy.gyfs" />
206 <div class="slxx_title title-block"> 205 <div class="slxx_title title-block">
207 义务人信息 206 义务人信息
208 <div class="triangle"></div> 207 <div class="triangle"></div>
209 </div> 208 </div>
210 <qlrCommonTable :tableData="ruleForm.ywrList" @upDateQlrxxList="upDateYwrxxList" :disabled="!ableOperation" 209 <qlrCommonTable :tableData="ruleForm.ywrList" @upDateQlrxxList="upDateYwrxxList" :disabled="!ableOperation" />
211 :viewtype="$route.query.viewtype" />
212 <div class="slxx_title title-block"> 210 <div class="slxx_title title-block">
213 家庭成员 211 家庭成员
214 <div class="triangle"></div> 212 <div class="triangle"></div>
215 </div> 213 </div>
216 <JtcyTable :tableData="ruleForm.jtcyList" :disabled="!ableOperation" @upDateJtcyList="upDateJtcyList" :viewtype="$route.query.viewtype" 214 <JtcyTable :tableData="ruleForm.jtcyList" :disabled="!ableOperation" @upDateJtcyList="upDateJtcyList" :gyfs="ruleForm.slywxx.gyfs" />
217 :gyfs="ruleForm.slywxx.gyfs" />
218 <div class="slxx_title title-block"> 215 <div class="slxx_title title-block">
219 登记原因 216 登记原因
220 <div class="triangle"></div> 217 <div class="triangle"></div>
...@@ -222,14 +219,14 @@ ...@@ -222,14 +219,14 @@
222 <el-row :gutter="10"> 219 <el-row :gutter="10">
223 <el-col> 220 <el-col>
224 <el-form-item label="登记原因:" prop="djyy"> 221 <el-form-item label="登记原因:" prop="djyy">
225 <el-input class="textArea" type="textarea" :disabled="$route.query.viewtype == 1 && !ableOperation" 222 <el-input class="textArea" type="textarea" :disabled="!ableOperation"
226 v-model="ruleForm.nydsyq.djyy"> 223 v-model="ruleForm.nydsyq.djyy">
227 </el-input> 224 </el-input>
228 </el-form-item> 225 </el-form-item>
229 </el-col> 226 </el-col>
230 </el-row> 227 </el-row>
231 </div> 228 </div>
232 <el-row class="btn" v-if="!$route.query.viewtype && ableOperation"> 229 <el-row class="btn" v-if="ableOperation">
233 <el-form-item> 230 <el-form-item>
234 <el-button type="primary" @click="onSubmit">保存</el-button> 231 <el-button type="primary" @click="onSubmit">保存</el-button>
235 </el-form-item> 232 </el-form-item>
...@@ -338,4 +335,4 @@ ...@@ -338,4 +335,4 @@
338 <style scoped lang='scss'> 335 <style scoped lang='scss'>
339 @import "~@/styles/public.scss"; 336 @import "~@/styles/public.scss";
340 @import "~@/styles/slxx/slxx.scss"; 337 @import "~@/styles/slxx/slxx.scss";
341 </style>
...\ No newline at end of file ...\ No newline at end of file
338 </style>
......
1 <!-- 1 <!--
2 * @Description: 2 * @Description:
3 * @Autor: renchao 3 * @Autor: renchao
4 * @LastEditTime: 2023-07-14 11:06:27 4 * @LastEditTime: 2023-07-20 09:30:51
5 --> 5 -->
6 <template> 6 <template>
7 <!-- 受理信息 --> 7 <!-- 受理信息 -->
8 <div class="slxx"> 8 <div class="slxx">
9 <el-form :model="ruleForm" :rules="rules" class="loadingtext" ref="ruleForm" :label-position="flag ? 'top' : ''" 9 <el-form
10 :inline="flag" label-width="120px"> 10 :model="ruleForm"
11 :rules="rules"
12 class="loadingtext"
13 ref="ruleForm"
14 :label-position="flag ? 'top' : ''"
15 :inline="flag"
16 label-width="120px">
11 <div class="slxx_con" v-if="isShow" :class="flag ? 'formMarginBot0' : ''"> 17 <div class="slxx_con" v-if="isShow" :class="flag ? 'formMarginBot0' : ''">
12 <div class="slxx_title title-block"> 18 <div class="slxx_title title-block">
13 受理信息 19 受理信息
...@@ -81,7 +87,9 @@ ...@@ -81,7 +87,9 @@
81 </el-col> 87 </el-col>
82 <el-col :span="8"> 88 <el-col :span="8">
83 <el-form-item label="面积单位:"> 89 <el-form-item label="面积单位:">
84 <el-input v-model="ruleForm.tdsyq.mjdw" :disabled="!ableOperation"></el-input> 90 <el-input
91 v-model="ruleForm.tdsyq.mjdw"
92 :disabled="!ableOperation"></el-input>
85 </el-form-item> 93 </el-form-item>
86 </el-col> 94 </el-col>
87 </el-row> 95 </el-row>
...@@ -89,10 +97,19 @@ ...@@ -89,10 +97,19 @@
89 <el-col :span="8"> 97 <el-col :span="8">
90 <el-form-item label="农用地面积:"> 98 <el-form-item label="农用地面积:">
91 <div class="flex"> 99 <div class="flex">
92 <el-input v-model="ruleForm.tdsyq.nydmj" :disabled="!ableOperation" 100 <el-input
101 v-model="ruleForm.tdsyq.nydmj"
102 :disabled="!ableOperation"
93 oninput="value = (value.match(/^\d*(\.?\d{0,3})/g)[0]) || null"></el-input> 103 oninput="value = (value.match(/^\d*(\.?\d{0,3})/g)[0]) || null"></el-input>
94 <el-select v-model="mjdw" :disabled="!ableOperation" style="width:20%"> 104 <el-select
95 <el-option v-for="item in dictData['A7']" :key="item.dcode" :label="item.dname" :value="item.dcode"> 105 v-model="mjdw"
106 :disabled="!ableOperation"
107 style="width: 20%">
108 <el-option
109 v-for="item in dictData['A7']"
110 :key="item.dcode"
111 :label="item.dname"
112 :value="item.dcode">
96 </el-option> 113 </el-option>
97 </el-select> 114 </el-select>
98 </div> 115 </div>
...@@ -101,10 +118,19 @@ ...@@ -101,10 +118,19 @@
101 <el-col :span="8"> 118 <el-col :span="8">
102 <el-form-item label="耕地面积:"> 119 <el-form-item label="耕地面积:">
103 <div class="flex"> 120 <div class="flex">
104 <el-input v-model="ruleForm.tdsyq.gdmj" :disabled="!ableOperation" 121 <el-input
122 v-model="ruleForm.tdsyq.gdmj"
123 :disabled="!ableOperation"
105 oninput="value = (value.match(/^\d*(\.?\d{0,3})/g)[0]) || null"></el-input> 124 oninput="value = (value.match(/^\d*(\.?\d{0,3})/g)[0]) || null"></el-input>
106 <el-select v-model="mjdw" :disabled="!ableOperation" style="width:20%"> 125 <el-select
107 <el-option v-for="item in dictData['A7']" :key="item.dcode" :label="item.dname" :value="item.dcode"> 126 v-model="mjdw"
127 :disabled="!ableOperation"
128 style="width: 20%">
129 <el-option
130 v-for="item in dictData['A7']"
131 :key="item.dcode"
132 :label="item.dname"
133 :value="item.dcode">
108 </el-option> 134 </el-option>
109 </el-select> 135 </el-select>
110 </div> 136 </div>
...@@ -113,10 +139,19 @@ ...@@ -113,10 +139,19 @@
113 <el-col :span="8"> 139 <el-col :span="8">
114 <el-form-item label="林地面积:"> 140 <el-form-item label="林地面积:">
115 <div class="flex"> 141 <div class="flex">
116 <el-input v-model="ruleForm.tdsyq.ldmj" :disabled="!ableOperation" 142 <el-input
143 v-model="ruleForm.tdsyq.ldmj"
144 :disabled="!ableOperation"
117 oninput="value = (value.match(/^\d*(\.?\d{0,3})/g)[0]) || null"></el-input> 145 oninput="value = (value.match(/^\d*(\.?\d{0,3})/g)[0]) || null"></el-input>
118 <el-select v-model="mjdw" :disabled="!ableOperation" style="width:20%"> 146 <el-select
119 <el-option v-for="item in dictData['A7']" :key="item.dcode" :label="item.dname" :value="item.dcode"> 147 v-model="mjdw"
148 :disabled="!ableOperation"
149 style="width: 20%">
150 <el-option
151 v-for="item in dictData['A7']"
152 :key="item.dcode"
153 :label="item.dname"
154 :value="item.dcode">
120 </el-option> 155 </el-option>
121 </el-select> 156 </el-select>
122 </div> 157 </div>
...@@ -127,10 +162,19 @@ ...@@ -127,10 +162,19 @@
127 <el-col :span="8"> 162 <el-col :span="8">
128 <el-form-item label="草地面积:"> 163 <el-form-item label="草地面积:">
129 <div class="flex"> 164 <div class="flex">
130 <el-input v-model="ruleForm.tdsyq.cdmj" :disabled="!ableOperation" 165 <el-input
166 v-model="ruleForm.tdsyq.cdmj"
167 :disabled="!ableOperation"
131 oninput="value = (value.match(/^\d*(\.?\d{0,3})/g)[0]) || null"></el-input> 168 oninput="value = (value.match(/^\d*(\.?\d{0,3})/g)[0]) || null"></el-input>
132 <el-select v-model="mjdw" :disabled="!ableOperation" style="width:20%"> 169 <el-select
133 <el-option v-for="item in dictData['A7']" :key="item.dcode" :label="item.dname" :value="item.dcode"> 170 v-model="mjdw"
171 :disabled="!ableOperation"
172 style="width: 20%">
173 <el-option
174 v-for="item in dictData['A7']"
175 :key="item.dcode"
176 :label="item.dname"
177 :value="item.dcode">
134 </el-option> 178 </el-option>
135 </el-select> 179 </el-select>
136 </div> 180 </div>
...@@ -139,10 +183,19 @@ ...@@ -139,10 +183,19 @@
139 <el-col :span="8"> 183 <el-col :span="8">
140 <el-form-item label="其他农用地面积:"> 184 <el-form-item label="其他农用地面积:">
141 <div class="flex"> 185 <div class="flex">
142 <el-input v-model="ruleForm.tdsyq.qtnydmj" :disabled="!ableOperation" 186 <el-input
187 v-model="ruleForm.tdsyq.qtnydmj"
188 :disabled="!ableOperation"
143 oninput="value = (value.match(/^\d*(\.?\d{0,3})/g)[0]) || null"></el-input> 189 oninput="value = (value.match(/^\d*(\.?\d{0,3})/g)[0]) || null"></el-input>
144 <el-select v-model="mjdw" :disabled="!ableOperation" style="width:20%"> 190 <el-select
145 <el-option v-for="item in dictData['A7']" :key="item.dcode" :label="item.dname" :value="item.dcode"> 191 v-model="mjdw"
192 :disabled="!ableOperation"
193 style="width: 20%">
194 <el-option
195 v-for="item in dictData['A7']"
196 :key="item.dcode"
197 :label="item.dname"
198 :value="item.dcode">
146 </el-option> 199 </el-option>
147 </el-select> 200 </el-select>
148 </div> 201 </div>
...@@ -151,10 +204,19 @@ ...@@ -151,10 +204,19 @@
151 <el-col :span="8"> 204 <el-col :span="8">
152 <el-form-item label="建筑使用面积:"> 205 <el-form-item label="建筑使用面积:">
153 <div class="flex"> 206 <div class="flex">
154 <el-input v-model="ruleForm.tdsyq.jsydmj" :disabled="!ableOperation" 207 <el-input
208 v-model="ruleForm.tdsyq.jsydmj"
209 :disabled="!ableOperation"
155 oninput="value = (value.match(/^\d*(\.?\d{0,3})/g)[0]) || null"></el-input> 210 oninput="value = (value.match(/^\d*(\.?\d{0,3})/g)[0]) || null"></el-input>
156 <el-select v-model="mjdw" :disabled="!ableOperation" style="width:20%"> 211 <el-select
157 <el-option v-for="item in dictData['A7']" :key="item.dcode" :label="item.dname" :value="item.dcode"> 212 v-model="mjdw"
213 :disabled="!ableOperation"
214 style="width: 20%">
215 <el-option
216 v-for="item in dictData['A7']"
217 :key="item.dcode"
218 :label="item.dname"
219 :value="item.dcode">
158 </el-option> 220 </el-option>
159 </el-select> 221 </el-select>
160 </div> 222 </div>
...@@ -165,10 +227,19 @@ ...@@ -165,10 +227,19 @@
165 <el-col :span="8"> 227 <el-col :span="8">
166 <el-form-item label="未利用地面积:"> 228 <el-form-item label="未利用地面积:">
167 <div class="flex"> 229 <div class="flex">
168 <el-input v-model="ruleForm.tdsyq.wlydmj" :disabled="!ableOperation" 230 <el-input
231 v-model="ruleForm.tdsyq.wlydmj"
232 :disabled="!ableOperation"
169 oninput="value = (value.match(/^\d*(\.?\d{0,3})/g)[0]) || null"></el-input> 233 oninput="value = (value.match(/^\d*(\.?\d{0,3})/g)[0]) || null"></el-input>
170 <el-select v-model="mjdw" :disabled="!ableOperation" style="width:20%"> 234 <el-select
171 <el-option v-for="item in dictData['A7']" :key="item.dcode" :label="item.dname" :value="item.dcode"> 235 v-model="mjdw"
236 :disabled="!ableOperation"
237 style="width: 20%">
238 <el-option
239 v-for="item in dictData['A7']"
240 :key="item.dcode"
241 :label="item.dname"
242 :value="item.dcode">
172 </el-option> 243 </el-option>
173 </el-select> 244 </el-select>
174 </div> 245 </div>
...@@ -181,7 +252,7 @@ ...@@ -181,7 +252,7 @@
181 </div> 252 </div>
182 <tdytTable 253 <tdytTable
183 :tableData="ruleForm.tdytqxList" 254 :tableData="ruleForm.tdytqxList"
184 :ableOperation="ableOperation" 255 :ableOperation="ableOperation"
185 @upDateTdytxxList="upDateTdytxxList" /> 256 @upDateTdytxxList="upDateTdytxxList" />
186 <div class="slxx_title title-block"> 257 <div class="slxx_title title-block">
187 权利人信息 258 权利人信息
...@@ -190,7 +261,9 @@ ...@@ -190,7 +261,9 @@
190 <el-row :gutter="10"> 261 <el-row :gutter="10">
191 <el-col :span="12"> 262 <el-col :span="12">
192 <el-form-item label="共有方式:"> 263 <el-form-item label="共有方式:">
193 <el-radio-group :disabled="$route.query.viewtype == 0" v-model="ruleForm.sldy.gyfs"> 264 <el-radio-group
265 :disabled="!ableOperation"
266 v-model="ruleForm.sldy.gyfs">
194 <el-radio label="0">单独所有</el-radio> 267 <el-radio label="0">单独所有</el-radio>
195 <el-radio label="1">共同共有</el-radio> 268 <el-radio label="1">共同共有</el-radio>
196 <el-radio label="2">按份所有</el-radio> 269 <el-radio label="2">按份所有</el-radio>
...@@ -200,31 +273,50 @@ ...@@ -200,31 +273,50 @@
200 </el-col> 273 </el-col>
201 <el-col :span="6" v-show="ruleForm.sldy.gyfs == '1'"> 274 <el-col :span="6" v-show="ruleForm.sldy.gyfs == '1'">
202 <el-form-item label="是否分别持证:"> 275 <el-form-item label="是否分别持证:">
203 <el-radio-group v-model="ruleForm.sldy.sqfbcz" :disabled="!ableOperation"> 276 <el-radio-group
204 <el-radio :label=1></el-radio> 277 v-model="ruleForm.sldy.sqfbcz"
205 <el-radio :label=0></el-radio> 278 :disabled="!ableOperation">
279 <el-radio :label="1"></el-radio>
280 <el-radio :label="0"></el-radio>
206 </el-radio-group> 281 </el-radio-group>
207 </el-form-item> 282 </el-form-item>
208 </el-col> 283 </el-col>
209 <el-col :span="6" v-show="ruleForm.sldy.sqfbcz == '0'&&ruleForm.sldy.gyfs == '1'"> 284 <el-col
285 :span="6"
286 v-show="ruleForm.sldy.sqfbcz == '0' && ruleForm.sldy.gyfs == '1'">
210 <el-form-item label="持证人:"> 287 <el-form-item label="持证人:">
211 <el-select v-model="ruleForm.czr" placeholder="持证人" :disabled="!ableOperation"> 288 <el-select
212 <el-option v-for="item in czrOptions" :key="item.zjh" :label="item.sqrmc" :value="item.zjh"> 289 v-model="ruleForm.czr"
290 placeholder="持证人"
291 :disabled="!ableOperation">
292 <el-option
293 v-for="item in czrOptions"
294 :key="item.zjh"
295 :label="item.sqrmc"
296 :value="item.zjh">
213 </el-option> 297 </el-option>
214 </el-select> 298 </el-select>
215 </el-form-item> 299 </el-form-item>
216 </el-col> 300 </el-col>
217 </el-row> 301 </el-row>
218 <qlrCommonTable :tableData="ruleForm.qlrList" :disabled="!ableOperation" @upDateQlrxxList="upDateQlrxxList" :key="key" 302 <qlrCommonTable
219 :viewtype="$route.query.viewtype" :gyfs="ruleForm.sldy.gyfs" /> 303 :tableData="ruleForm.qlrList"
304 :disabled="!ableOperation"
305 @upDateQlrxxList="upDateQlrxxList"
306 :key="key"
307 :gyfs="ruleForm.sldy.gyfs" />
220 308
221 <div v-if="ruleForm.ywrList && ruleForm.ywrList.length > 0"> 309 <div v-if="ruleForm.ywrList && ruleForm.ywrList.length > 0">
222 <div class="slxx_title title-block"> 310 <div class="slxx_title title-block">
223 义务人信息 311 义务人信息
224 <div class="triangle"></div> 312 <div class="triangle"></div>
225 </div> 313 </div>
226 <qlrCommonTable v-if="ruleForm.ywrList" :disabled="!ableOperation" :tableData="ruleForm.ywrList" :key="key" @upDateQlrxxList="upDateYwrxxList" 314 <qlrCommonTable
227 :viewtype="$route.query.viewtype" /> 315 v-if="ruleForm.ywrList"
316 :disabled="!ableOperation"
317 :tableData="ruleForm.ywrList"
318 :key="key"
319 @upDateQlrxxList="upDateYwrxxList" />
228 </div> 320 </div>
229 321
230 <div class="slxx_title title-block"> 322 <div class="slxx_title title-block">
...@@ -234,14 +326,17 @@ ...@@ -234,14 +326,17 @@
234 <el-row :gutter="10"> 326 <el-row :gutter="10">
235 <el-col> 327 <el-col>
236 <el-form-item label="登记原因:" prop="djyy"> 328 <el-form-item label="登记原因:" prop="djyy">
237 <el-input class="textArea" type="textarea" :disabled="!ableOperation" 329 <el-input
330 class="textArea"
331 type="textarea"
332 :disabled="!ableOperation"
238 v-model="ruleForm.tdsyq.djyy"> 333 v-model="ruleForm.tdsyq.djyy">
239 </el-input> 334 </el-input>
240 </el-form-item> 335 </el-form-item>
241 </el-col> 336 </el-col>
242 </el-row> 337 </el-row>
243 </div> 338 </div>
244 <el-row class="btn" v-if="!$route.query.viewtype && ableOperation"> 339 <el-row class="btn" v-if="ableOperation">
245 <el-form-item> 340 <el-form-item>
246 <el-button type="primary" @click="onSubmit">保存</el-button> 341 <el-button type="primary" @click="onSubmit">保存</el-button>
247 </el-form-item> 342 </el-form-item>
...@@ -250,17 +345,17 @@ ...@@ -250,17 +345,17 @@
250 </div> 345 </div>
251 </template> 346 </template>
252 <script> 347 <script>
253 import { mapGetters } from "vuex" 348 import { mapGetters } from "vuex";
254 import { Init, saveData } from "@/api/workflow/tdsyqFlow.js" 349 import { Init, saveData } from "@/api/workflow/tdsyqFlow.js";
255 import tdytTable from "@/views/workflow/components/tdytTable"; 350 import tdytTable from "@/views/workflow/components/tdytTable";
256 import qlrCommonTable from "@/views/workflow/components/qlrCommonTable" 351 import qlrCommonTable from "@/views/workflow/components/qlrCommonTable";
257 export default { 352 export default {
258 components: { qlrCommonTable, tdytTable }, 353 components: { qlrCommonTable, tdytTable },
259 mounted () { 354 mounted () {
260 this.ableOperation = this.$parent.currentSelectTab.ableOperation 355 this.ableOperation = this.$parent.currentSelectTab.ableOperation;
261 this.propsParam = this.$attrs; 356 this.propsParam = this.$attrs;
262 var formdata = new FormData(); 357 var formdata = new FormData();
263 let that = this 358 let that = this;
264 this.$startLoading(); 359 this.$startLoading();
265 formdata.append("bsmSldy", this.propsParam.bsmSldy); 360 formdata.append("bsmSldy", this.propsParam.bsmSldy);
266 formdata.append("djlx", this.propsParam.djlx); 361 formdata.append("djlx", this.propsParam.djlx);
...@@ -271,24 +366,24 @@ ...@@ -271,24 +366,24 @@
271 that.$endLoading(); 366 that.$endLoading();
272 that.isShow = true; 367 that.isShow = true;
273 this.czrOptions = this.ruleForm.qlrList; 368 this.czrOptions = this.ruleForm.qlrList;
274 }) 369 });
275 }) 370 });
276 }, 371 },
277 372
278 computed: { 373 computed: {
279 ...mapGetters(["dictData", "flag"]) 374 ...mapGetters(["dictData", "flag"]),
280 }, 375 },
281 data () { 376 data () {
282 return { 377 return {
283 mjdw: '1', 378 mjdw: "1",
284 value2: { 379 value2: {
285 id: "520000198407304275", 380 id: "520000198407304275",
286 user: "史平" 381 user: "史平",
287 }, 382 },
288 props: { 383 props: {
289 label: 'user', 384 label: "user",
290 value: 'id', 385 value: "id",
291 keyword: "keyword" 386 keyword: "keyword",
292 }, 387 },
293 388
294 //表单是否可操作 389 //表单是否可操作
...@@ -300,8 +395,8 @@ ...@@ -300,8 +395,8 @@
300 ruleForm: {}, 395 ruleForm: {},
301 //传递参数 396 //传递参数
302 propsParam: {}, 397 propsParam: {},
303 rules: {} 398 rules: {},
304 } 399 };
305 }, 400 },
306 methods: { 401 methods: {
307 // 更新土地用途信息 402 // 更新土地用途信息
...@@ -311,14 +406,14 @@ ...@@ -311,14 +406,14 @@
311 }, 406 },
312 // 更新权利人信息 407 // 更新权利人信息
313 upDateQlrxxList (val) { 408 upDateQlrxxList (val) {
314 this.ruleForm.qlrList && (this.ruleForm.qlrList = _.cloneDeep(val)) 409 this.ruleForm.qlrList && (this.ruleForm.qlrList = _.cloneDeep(val));
315 this.czrOptions = this.ruleForm.qlrList; 410 this.czrOptions = this.ruleForm.qlrList;
316 this.key++ 411 this.key++;
317 }, 412 },
318 // 更新义务人信息 413 // 更新义务人信息
319 upDateYwrxxList (val) { 414 upDateYwrxxList (val) {
320 this.ruleForm.ywrList && (this.ruleForm.ywrList = _.cloneDeep(val)) 415 this.ruleForm.ywrList && (this.ruleForm.ywrList = _.cloneDeep(val));
321 this.key++ 416 this.key++;
322 }, 417 },
323 onSubmit () { 418 onSubmit () {
324 if (this.ruleForm.qlrList.length == 0) { 419 if (this.ruleForm.qlrList.length == 0) {
...@@ -343,18 +438,19 @@ ...@@ -343,18 +438,19 @@
343 } 438 }
344 if (this.ruleForm.sldy.gyfs == "1") { 439 if (this.ruleForm.sldy.gyfs == "1") {
345 //是否分别持证 440 //是否分别持证
346 if (this.ruleForm.sldy.sqfbcz == '1') { //是 441 if (this.ruleForm.sldy.sqfbcz == "1") {
442 //是
347 this.ruleForm.qlrList.forEach((item, index) => { 443 this.ruleForm.qlrList.forEach((item, index) => {
348 item.sfczr = "1" 444 item.sfczr = "1";
349 }); 445 });
350 } else { 446 } else {
351 this.ruleForm.qlrList.forEach((item, index) => { 447 this.ruleForm.qlrList.forEach((item, index) => {
352 if (item.zjh == this.ruleForm.czr) { 448 if (item.zjh == this.ruleForm.czr) {
353 item.sfczr = "1" 449 item.sfczr = "1";
354 } else { 450 } else {
355 item.sfczr = "0" 451 item.sfczr = "0";
356 } 452 }
357 }) 453 });
358 } 454 }
359 } 455 }
360 saveData(this.ruleForm).then((res) => { 456 saveData(this.ruleForm).then((res) => {
...@@ -362,22 +458,22 @@ ...@@ -362,22 +458,22 @@
362 this.$message({ 458 this.$message({
363 showClose: true, 459 showClose: true,
364 message: "保存成功!", 460 message: "保存成功!",
365 type: "success" 461 type: "success",
366 }) 462 });
367 this.$store.dispatch('user/refreshPage', true); 463 this.$store.dispatch("user/refreshPage", true);
368 } else { 464 } else {
369 this.$message({ 465 this.$message({
370 showClose: true, 466 showClose: true,
371 message: res.message, 467 message: res.message,
372 type: "error" 468 type: "error",
373 }) 469 });
374 } 470 }
375 }) 471 });
376 } 472 },
377 } 473 },
378 } 474 };
379 </script> 475 </script>
380 <style scoped lang='scss'> 476 <style scoped lang="scss">
381 @import "~@/styles/public.scss"; 477 @import "~@/styles/public.scss";
382 @import "~@/styles/slxx/slxx.scss"; 478 @import "~@/styles/slxx/slxx.scss";
383 </style> 479 </style>
......
...@@ -111,7 +111,7 @@ ...@@ -111,7 +111,7 @@
111 <el-row :gutter="10"> 111 <el-row :gutter="10">
112 <el-col :span="14" v-if="ruleForm.qlxx"> 112 <el-col :span="14" v-if="ruleForm.qlxx">
113 <el-form-item label="共有方式:"> 113 <el-form-item label="共有方式:">
114 <el-radio-group :disabled="$route.query.viewtype == 1" v-model="ruleForm.sldy.gyfs"> 114 <el-radio-group :disabled="!ableOperation" v-model="ruleForm.sldy.gyfs">
115 <el-radio label="0">单独所有</el-radio> 115 <el-radio label="0">单独所有</el-radio>
116 <el-radio label="1">共同共有</el-radio> 116 <el-radio label="1">共同共有</el-radio>
117 <el-radio label="2">按份所有</el-radio> 117 <el-radio label="2">按份所有</el-radio>
...@@ -120,13 +120,13 @@ ...@@ -120,13 +120,13 @@
120 </el-form-item> 120 </el-form-item>
121 </el-col> 121 </el-col>
122 </el-row> 122 </el-row>
123 <qlrCommonTable @upDateQlrxxList="upDateQlrxxList" :tableData="ruleForm.qlrList" 123 <qlrCommonTable @upDateQlrxxList="upDateQlrxxList" :disabled="!ableOperation" :tableData="ruleForm.qlrList"
124 :gyfs="ruleForm.qlxx.gyfs" /> 124 :gyfs="ruleForm.qlxx.gyfs" />
125 <div class="slxx_title title-block"> 125 <div class="slxx_title title-block">
126 义务人信息 126 义务人信息
127 <div class="triangle"></div> 127 <div class="triangle"></div>
128 </div> 128 </div>
129 <qlrCommonTable @upDateQlrxxList="upDateYwrxxList" :tableData="ruleForm.ywrList" 129 <qlrCommonTable @upDateQlrxxList="upDateYwrxxList" :disabled="!ableOperation" :tableData="ruleForm.ywrList"
130 :gyfs="ruleForm.qlxx.gyfs" /> 130 :gyfs="ruleForm.qlxx.gyfs" />
131 <div class="slxx_title title-block"> 131 <div class="slxx_title title-block">
132 登记原因 132 登记原因
...@@ -135,14 +135,14 @@ ...@@ -135,14 +135,14 @@
135 <el-row :gutter="10"> 135 <el-row :gutter="10">
136 <el-col> 136 <el-col>
137 <el-form-item label="登记原因:" prop="djyy"> 137 <el-form-item label="登记原因:" prop="djyy">
138 <el-input class="textArea" type="textarea" :disabled="$route.query.viewtype == 1" 138 <el-input class="textArea" type="textarea" :disabled="!ableOperation"
139 v-model="ruleForm.ygdj.djyy"> 139 v-model="ruleForm.ygdj.djyy">
140 </el-input> 140 </el-input>
141 </el-form-item> 141 </el-form-item>
142 </el-col> 142 </el-col>
143 </el-row> 143 </el-row>
144 </div> 144 </div>
145 <el-row class="btn" v-if="!$route.query.viewtype && ableOperation"> 145 <el-row class="btn" v-if="ableOperation">
146 <el-form-item> 146 <el-form-item>
147 <el-button type="primary" @click="onSubmit">保存</el-button> 147 <el-button type="primary" @click="onSubmit">保存</el-button>
148 </el-form-item> 148 </el-form-item>
......
...@@ -114,7 +114,7 @@ ...@@ -114,7 +114,7 @@
114 <el-row :gutter="10"> 114 <el-row :gutter="10">
115 <el-col :span="14" v-if="ruleForm.qlxx"> 115 <el-col :span="14" v-if="ruleForm.qlxx">
116 <el-form-item label="共有方式:"> 116 <el-form-item label="共有方式:">
117 <el-radio-group :disabled="$route.query.viewtype == 1 && !ableOperation" v-model="ruleForm.sldy.gyfs"> 117 <el-radio-group :disabled="!ableOperation" v-model="ruleForm.sldy.gyfs">
118 <el-radio label="0">单独所有</el-radio> 118 <el-radio label="0">单独所有</el-radio>
119 <el-radio label="1">共同共有</el-radio> 119 <el-radio label="1">共同共有</el-radio>
120 <el-radio label="2">按份所有</el-radio> 120 <el-radio label="2">按份所有</el-radio>
...@@ -138,14 +138,14 @@ ...@@ -138,14 +138,14 @@
138 <el-row :gutter="10"> 138 <el-row :gutter="10">
139 <el-col> 139 <el-col>
140 <el-form-item label="登记原因:" prop="djyy"> 140 <el-form-item label="登记原因:" prop="djyy">
141 <el-input class="textArea" type="textarea" :disabled="$route.query.viewtype == 1 && !ableOperation" 141 <el-input class="textArea" type="textarea" :disabled="!ableOperation"
142 v-model="ruleForm.ygdj.djyy"> 142 v-model="ruleForm.ygdj.djyy">
143 </el-input> 143 </el-input>
144 </el-form-item> 144 </el-form-item>
145 </el-col> 145 </el-col>
146 </el-row> 146 </el-row>
147 </div> 147 </div>
148 <el-row class="btn" v-if="!$route.query.viewtype && ableOperation"> 148 <el-row class="btn" v-if="ableOperation">
149 <el-form-item> 149 <el-form-item>
150 <el-button type="primary" @click="onSubmit">保存</el-button> 150 <el-button type="primary" @click="onSubmit">保存</el-button>
151 </el-form-item> 151 </el-form-item>
......
...@@ -136,13 +136,13 @@ ...@@ -136,13 +136,13 @@
136 <el-col :span="16"> 136 <el-col :span="16">
137 <el-form-item label="是否存在禁止或限制转让抵押不动产的约定:"> 137 <el-form-item label="是否存在禁止或限制转让抵押不动产的约定:">
138 <el-input v-model="ruleForm.ygdj.sfczjzhxz" 138 <el-input v-model="ruleForm.ygdj.sfczjzhxz"
139 :disabled="($route.query.viewtype == 1 || ruleForm.sldy.djlx == '300') && !ableOperation"></el-input> 139 :disabled="ruleForm.sldy.djlx == '300' && !ableOperation"></el-input>
140 </el-form-item> 140 </el-form-item>
141 </el-col> 141 </el-col>
142 <el-col :span="8"> 142 <el-col :span="8">
143 <el-form-item label="担保范围:"> 143 <el-form-item label="担保范围:">
144 <el-input v-model="ruleForm.ygdj.dbfw" 144 <el-input v-model="ruleForm.ygdj.dbfw"
145 :disabled="($route.query.viewtype == 1 || ruleForm.sldy.djlx == '300') && !ableOperation"></el-input> 145 :disabled="ruleForm.sldy.djlx == '300' && !ableOperation"></el-input>
146 </el-form-item> 146 </el-form-item>
147 </el-col> 147 </el-col>
148 148
...@@ -150,7 +150,7 @@ ...@@ -150,7 +150,7 @@
150 <el-row> 150 <el-row>
151 <el-col :span="24"> 151 <el-col :span="24">
152 <el-form-item label="附记:" prop="fj"> 152 <el-form-item label="附记:" prop="fj">
153 <el-input type="textarea" v-model="ruleForm.ygdj.fj" :disabled="$route.query.viewtype == 1 && !ableOperation"></el-input> 153 <el-input type="textarea" v-model="ruleForm.ygdj.fj" :disabled="!ableOperation"></el-input>
154 </el-form-item> 154 </el-form-item>
155 </el-col> 155 </el-col>
156 </el-row> 156 </el-row>
...@@ -161,7 +161,7 @@ ...@@ -161,7 +161,7 @@
161 <el-row :gutter="10"> 161 <el-row :gutter="10">
162 <el-col :span="14"> 162 <el-col :span="14">
163 <el-form-item label="共有方式:"> 163 <el-form-item label="共有方式:">
164 <el-radio-group :disabled="$route.query.viewtype == 1 && !ableOperation" v-model="ruleForm.sldy.gyfs"> 164 <el-radio-group :disabled="!ableOperation" v-model="ruleForm.sldy.gyfs">
165 <el-radio label="0">单独所有</el-radio> 165 <el-radio label="0">单独所有</el-radio>
166 <el-radio label="1">共同共有</el-radio> 166 <el-radio label="1">共同共有</el-radio>
167 <el-radio label="2">按份所有</el-radio> 167 <el-radio label="2">按份所有</el-radio>
...@@ -185,14 +185,14 @@ ...@@ -185,14 +185,14 @@
185 <el-row :gutter="10"> 185 <el-row :gutter="10">
186 <el-col> 186 <el-col>
187 <el-form-item label="登记原因:" prop="djyy"> 187 <el-form-item label="登记原因:" prop="djyy">
188 <el-input class="textArea" type="textarea" :disabled="$route.query.viewtype == 1 && !ableOperation" 188 <el-input class="textArea" type="textarea" :disabled="!ableOperation"
189 v-model="ruleForm.ygdj.djyy"> 189 v-model="ruleForm.ygdj.djyy">
190 </el-input> 190 </el-input>
191 </el-form-item> 191 </el-form-item>
192 </el-col> 192 </el-col>
193 </el-row> 193 </el-row>
194 </div> 194 </div>
195 <el-row class="btn" v-if="!$route.query.viewtype && ableOperation"> 195 <el-row class="btn" v-if="ableOperation">
196 <el-form-item> 196 <el-form-item>
197 <el-button type="primary" @click="onSubmit">保存</el-button> 197 <el-button type="primary" @click="onSubmit">保存</el-button>
198 </el-form-item> 198 </el-form-item>
......
...@@ -83,7 +83,7 @@ ...@@ -83,7 +83,7 @@
83 <el-col :span="8" v-show="ruleForm.diyaqList[0].dyfs == 1"> 83 <el-col :span="8" v-show="ruleForm.diyaqList[0].dyfs == 1">
84 <el-form-item label="被担保主债权数额:"> 84 <el-form-item label="被担保主债权数额:">
85 <el-input v-model="ruleForm.diyaqList[0].bdbzzqse" :disabled="!ableOperation"></el-input> 85 <el-input v-model="ruleForm.diyaqList[0].bdbzzqse" :disabled="!ableOperation"></el-input>
86 <el-select v-model="ruleForm.diyaqList[0].jedw" :disabled="$route.query.viewtype == '1' && !ableOperation"> 86 <el-select v-model="ruleForm.diyaqList[0].jedw" :disabled="!ableOperation">
87 <el-option v-for="item in dictData['A57']" :key="item.dcode" :label="item.dname" :value="item.dcode"> 87 <el-option v-for="item in dictData['A57']" :key="item.dcode" :label="item.dname" :value="item.dcode">
88 </el-option> 88 </el-option>
89 </el-select> 89 </el-select>
...@@ -93,7 +93,7 @@ ...@@ -93,7 +93,7 @@
93 <el-col :span="8" v-show="ruleForm.diyaqList[0].dyfs == 2"> 93 <el-col :span="8" v-show="ruleForm.diyaqList[0].dyfs == 2">
94 <el-form-item label="最高债权额:"> 94 <el-form-item label="最高债权额:">
95 <el-input v-model="ruleForm.diyaqList[0].zgzqse" :disabled="!ableOperation"></el-input> 95 <el-input v-model="ruleForm.diyaqList[0].zgzqse" :disabled="!ableOperation"></el-input>
96 <el-select v-model="ruleForm.diyaqList[0].jedw" :disabled="$route.query.viewtype == '1' && !ableOperation"> 96 <el-select v-model="ruleForm.diyaqList[0].jedw" :disabled="!ableOperation">
97 <el-option v-for="item in dictData['A57']" :key="item.dcode" :label="item.dname" :value="item.dcode"> 97 <el-option v-for="item in dictData['A57']" :key="item.dcode" :label="item.dname" :value="item.dcode">
98 </el-option> 98 </el-option>
99 </el-select> 99 </el-select>
...@@ -118,7 +118,7 @@ ...@@ -118,7 +118,7 @@
118 <el-col :span="24"> 118 <el-col :span="24">
119 <el-form-item label="担保范围:"> 119 <el-form-item label="担保范围:">
120 <el-input v-model="ruleForm.diyaqList[0].dbfw" 120 <el-input v-model="ruleForm.diyaqList[0].dbfw"
121 :disabled="($route.query.viewtype == 1 || ruleForm.sldyList[0].djlx == '300') && !ableOperation"></el-input> 121 :disabled="ruleForm.sldyList[0].djlx == '300' && !ableOperation"></el-input>
122 </el-form-item> 122 </el-form-item>
123 </el-col> 123 </el-col>
124 </el-row> 124 </el-row>
...@@ -132,7 +132,7 @@ ...@@ -132,7 +132,7 @@
132 <el-row> 132 <el-row>
133 <el-col> 133 <el-col>
134 <el-form-item label="附记:" prop="fj"> 134 <el-form-item label="附记:" prop="fj">
135 <el-input type="textarea" v-model="ruleForm.diyaqList[0].fj" :disabled="$route.query.viewtype == 1 && !ableOperation"></el-input> 135 <el-input type="textarea" v-model="ruleForm.diyaqList[0].fj" :disabled="!ableOperation"></el-input>
136 </el-form-item> 136 </el-form-item>
137 </el-col> 137 </el-col>
138 </el-row> 138 </el-row>
...@@ -144,7 +144,7 @@ ...@@ -144,7 +144,7 @@
144 <el-row :gutter="10"> 144 <el-row :gutter="10">
145 <el-col :span="14"> 145 <el-col :span="14">
146 <el-form-item label="共有方式:"> 146 <el-form-item label="共有方式:">
147 <el-radio-group :disabled="$route.query.viewtype == 1 && !ableOperation" v-model="ruleForm.sldyList[0].gyfs"> 147 <el-radio-group :disabled="!ableOperation" v-model="ruleForm.sldyList[0].gyfs">
148 <el-radio label="0">单独所有</el-radio> 148 <el-radio label="0">单独所有</el-radio>
149 <el-radio label="1">共同共有</el-radio> 149 <el-radio label="1">共同共有</el-radio>
150 <el-radio label="2">按份所有</el-radio> 150 <el-radio label="2">按份所有</el-radio>
...@@ -169,14 +169,12 @@ ...@@ -169,14 +169,12 @@
169 </el-form-item> 169 </el-form-item>
170 </el-col> 170 </el-col>
171 </el-row> 171 </el-row>
172 <qlrCommonTable :tableData="ruleForm.qlrList" @upDateQlrxxList="upDateQlrxxList" :disabled="!ableOperation" 172 <qlrCommonTable :tableData="ruleForm.qlrList" @upDateQlrxxList="upDateQlrxxList" :disabled="!ableOperation" :gyfs="ruleForm.sldyList[0].gyfs" />
173 :viewtype="$route.query.viewtype" :gyfs="ruleForm.sldyList[0].gyfs" />
174 <div class="slxx_title title-block"> 173 <div class="slxx_title title-block">
175 抵押人信息 174 抵押人信息
176 <div class="triangle"></div> 175 <div class="triangle"></div>
177 </div> 176 </div>
178 <qlrCommonTable :tableData="ruleForm.ywrList" @upDateQlrxxList="upDateYwrxxList" :disabled="!ableOperation" 177 <qlrCommonTable :tableData="ruleForm.ywrList" @upDateQlrxxList="upDateYwrxxList" :disabled="!ableOperation" />
179 :viewtype="$route.query.viewtype" />
180 178
181 <div class="slxx_title title-block"> 179 <div class="slxx_title title-block">
182 登记原因 180 登记原因
...@@ -185,20 +183,19 @@ ...@@ -185,20 +183,19 @@
185 <el-row :gutter="10"> 183 <el-row :gutter="10">
186 <el-col> 184 <el-col>
187 <el-form-item v-if="ruleForm.sldyList[0].djlx == '400'" label="注销抵押原因:" prop="djyy"> 185 <el-form-item v-if="ruleForm.sldyList[0].djlx == '400'" label="注销抵押原因:" prop="djyy">
188 <el-input class="textArea" type="textarea" :disabled="$route.query.viewtype == 1 && !ableOperation" 186 <el-input class="textArea" type="textarea" :disabled="!ableOperation"
189 v-model="ruleForm.diyaqList[0].zxdyyy"> 187 v-model="ruleForm.diyaqList[0].zxdyyy">
190 </el-input> 188 </el-input>
191 </el-form-item> 189 </el-form-item>
192 <el-form-item v-else label="登记原因:" prop="djyy"> 190 <el-form-item v-else label="登记原因:" prop="djyy">
193 <el-input class="textArea" type="textarea" :disabled="$route.query.viewtype == 1 && !ableOperation" 191 <el-input class="textArea" type="textarea" :disabled="!ableOperation"
194 v-model="ruleForm.diyaqList[0].djyy"> 192 v-model="ruleForm.diyaqList[0].djyy">
195 </el-input> 193 </el-input>
196 </el-form-item> 194 </el-form-item>
197 </el-col> 195 </el-col>
198 </el-row> 196 </el-row>
199
200 </div> 197 </div>
201 <el-row class="btn" v-if="!$route.query.viewtype && ableOperation"> 198 <el-row class="btn" v-if="ableOperation">
202 <el-form-item> 199 <el-form-item>
203 <el-button type="primary" @click="onSubmitClick()">保存</el-button> 200 <el-button type="primary" @click="onSubmitClick()">保存</el-button>
204 </el-form-item> 201 </el-form-item>
......
...@@ -127,7 +127,7 @@ ...@@ -127,7 +127,7 @@
127 <el-col :span="8" v-show="ruleForm.diyaq.dyfs == 1"> 127 <el-col :span="8" v-show="ruleForm.diyaq.dyfs == 1">
128 <el-form-item label="被担保主债权数额:"> 128 <el-form-item label="被担保主债权数额:">
129 <el-input v-model="ruleForm.diyaq.bdbzzqse" :disabled="!ableOperation"></el-input> 129 <el-input v-model="ruleForm.diyaq.bdbzzqse" :disabled="!ableOperation"></el-input>
130 <el-select v-model="ruleForm.diyaq.jedw" :disabled="$route.query.viewtype == '1' && !ableOperation"> 130 <el-select v-model="ruleForm.diyaq.jedw" :disabled="!ableOperation">
131 <el-option v-for="item in dictData['A57']" :key="item.dcode" :label="item.dname" :value="item.dcode"> 131 <el-option v-for="item in dictData['A57']" :key="item.dcode" :label="item.dname" :value="item.dcode">
132 </el-option> 132 </el-option>
133 </el-select> 133 </el-select>
...@@ -137,7 +137,7 @@ ...@@ -137,7 +137,7 @@
137 <el-col :span="8" v-show="ruleForm.diyaq.dyfs == 2"> 137 <el-col :span="8" v-show="ruleForm.diyaq.dyfs == 2">
138 <el-form-item label="最高债权额:"> 138 <el-form-item label="最高债权额:">
139 <el-input v-model="ruleForm.diyaq.zgzqse" :disabled="!ableOperation"></el-input> 139 <el-input v-model="ruleForm.diyaq.zgzqse" :disabled="!ableOperation"></el-input>
140 <el-select v-model="ruleForm.diyaq.jedw" :disabled="$route.query.viewtype == '1' && !ableOperation"> 140 <el-select v-model="ruleForm.diyaq.jedw" :disabled="!ableOperation">
141 <el-option v-for="item in dictData['A57']" :key="item.dcode" :label="item.dname" :value="item.dcode"> 141 <el-option v-for="item in dictData['A57']" :key="item.dcode" :label="item.dname" :value="item.dcode">
142 </el-option> 142 </el-option>
143 </el-select> 143 </el-select>
...@@ -162,7 +162,7 @@ ...@@ -162,7 +162,7 @@
162 <el-col :span="24"> 162 <el-col :span="24">
163 <el-form-item label="担保范围:"> 163 <el-form-item label="担保范围:">
164 <el-input v-model="ruleForm.diyaq.dbfw" 164 <el-input v-model="ruleForm.diyaq.dbfw"
165 :disabled="($route.query.viewtype == 1 || ruleForm.sldy.djlx == '300') && !ableOperation"></el-input> 165 :disabled="ruleForm.sldy.djlx == '300' && !ableOperation"></el-input>
166 </el-form-item> 166 </el-form-item>
167 </el-col> 167 </el-col>
168 </el-row> 168 </el-row>
...@@ -176,7 +176,7 @@ ...@@ -176,7 +176,7 @@
176 <el-row> 176 <el-row>
177 <el-col> 177 <el-col>
178 <el-form-item label="附记:" prop="fj"> 178 <el-form-item label="附记:" prop="fj">
179 <el-input type="textarea" v-model="ruleForm.diyaq.fj" :disabled="$route.query.viewtype == 1 && !ableOperation"></el-input> 179 <el-input type="textarea" v-model="ruleForm.diyaq.fj" :disabled="!ableOperation"></el-input>
180 </el-form-item> 180 </el-form-item>
181 </el-col> 181 </el-col>
182 </el-row> 182 </el-row>
...@@ -188,7 +188,7 @@ ...@@ -188,7 +188,7 @@
188 <el-row :gutter="10"> 188 <el-row :gutter="10">
189 <el-col :span="14"> 189 <el-col :span="14">
190 <el-form-item label="共有方式:"> 190 <el-form-item label="共有方式:">
191 <el-radio-group :disabled="$route.query.viewtype == 1 && !ableOperation" v-model="ruleForm.sldy.gyfs"> 191 <el-radio-group :disabled="!ableOperation" v-model="ruleForm.sldy.gyfs">
192 <el-radio label="0">单独所有</el-radio> 192 <el-radio label="0">单独所有</el-radio>
193 <el-radio label="1">共同共有</el-radio> 193 <el-radio label="1">共同共有</el-radio>
194 <el-radio label="2">按份所有</el-radio> 194 <el-radio label="2">按份所有</el-radio>
...@@ -213,14 +213,12 @@ ...@@ -213,14 +213,12 @@
213 </el-form-item> 213 </el-form-item>
214 </el-col> 214 </el-col>
215 </el-row> 215 </el-row>
216 <qlrCommonTable :tableData="ruleForm.qlrList" @upDateQlrxxList="upDateQlrxxList" :disabled="!ableOperation" 216 <qlrCommonTable :tableData="ruleForm.qlrList" @upDateQlrxxList="upDateQlrxxList" :disabled="!ableOperation" :gyfs="ruleForm.sldy.gyfs" />
217 :viewtype="$route.query.viewtype" :gyfs="ruleForm.sldy.gyfs" />
218 <div class="slxx_title title-block"> 217 <div class="slxx_title title-block">
219 抵押人信息 218 抵押人信息
220 <div class="triangle"></div> 219 <div class="triangle"></div>
221 </div> 220 </div>
222 <qlrCommonTable :tableData="ruleForm.ywrList" @upDateQlrxxList="upDateYwrxxList" :disabled="!ableOperation" 221 <qlrCommonTable :tableData="ruleForm.ywrList" @upDateQlrxxList="upDateYwrxxList" :disabled="!ableOperation" />
223 :viewtype="$route.query.viewtype" />
224 222
225 <div class="slxx_title title-block"> 223 <div class="slxx_title title-block">
226 登记原因 224 登记原因
...@@ -229,20 +227,19 @@ ...@@ -229,20 +227,19 @@
229 <el-row :gutter="10"> 227 <el-row :gutter="10">
230 <el-col> 228 <el-col>
231 <el-form-item v-if="ruleForm.sldy.djlx == '400'" label="注销抵押原因:" prop="djyy"> 229 <el-form-item v-if="ruleForm.sldy.djlx == '400'" label="注销抵押原因:" prop="djyy">
232 <el-input class="textArea" type="textarea" :disabled="$route.query.viewtype == 1 && !ableOperation" 230 <el-input class="textArea" type="textarea" :disabled="!ableOperation"
233 v-model="ruleForm.diyaq.zxdyyy"> 231 v-model="ruleForm.diyaq.zxdyyy">
234 </el-input> 232 </el-input>
235 </el-form-item> 233 </el-form-item>
236 <el-form-item v-else label="登记原因:" prop="djyy"> 234 <el-form-item v-else label="登记原因:" prop="djyy">
237 <el-input class="textArea" type="textarea" :disabled="$route.query.viewtype == 1 && !ableOperation " 235 <el-input class="textArea" type="textarea" :disabled="!ableOperation "
238 v-model="ruleForm.diyaq.djyy"> 236 v-model="ruleForm.diyaq.djyy">
239 </el-input> 237 </el-input>
240 </el-form-item> 238 </el-form-item>
241 </el-col> 239 </el-col>
242 </el-row> 240 </el-row>
243
244 </div> 241 </div>
245 <el-row class="btn" v-if="!$route.query.viewtype && ableOperation"> 242 <el-row class="btn" v-if="ableOperation">
246 <el-form-item> 243 <el-form-item>
247 <el-button type="primary" @click="onSubmitClick()">保存</el-button> 244 <el-button type="primary" @click="onSubmitClick()">保存</el-button>
248 </el-form-item> 245 </el-form-item>
......
...@@ -211,9 +211,7 @@ ...@@ -211,9 +211,7 @@
211 "/workFrameView?bsmSlsq=" + 211 "/workFrameView?bsmSlsq=" +
212 item.bsmSlsq + 212 item.bsmSlsq +
213 "&bestepid=" + 213 "&bestepid=" +
214 item.bestepid + 214 item.bestepid
215 "&bsmBusiness=" +
216 "&viewtype=1"
217 ); 215 );
218 window.open(href, `workFrameView${item.bsmSlsq}`); 216 window.open(href, `workFrameView${item.bsmSlsq}`);
219 } 217 }
......
...@@ -3,9 +3,7 @@ const path = require('path') ...@@ -3,9 +3,7 @@ const path = require('path')
3 function resolve (dir) { 3 function resolve (dir) {
4 return path.join(__dirname, dir) 4 return path.join(__dirname, dir)
5 } 5 }
6
7 const port = process.env.port || process.env.npm_config_port || 8888 // dev port 6 const port = process.env.port || process.env.npm_config_port || 8888 // dev port
8
9 // All configuration item explanations can be find in https://cli.vuejs.org/config/ 7 // All configuration item explanations can be find in https://cli.vuejs.org/config/
10 module.exports = { 8 module.exports = {
11 /** 9 /**
......