5d6395d4 by xiaomiao

登记簿打印

1 parent 4daf6578
...@@ -23,6 +23,7 @@ ...@@ -23,6 +23,7 @@
23 "node-sass": "^4.14.1", 23 "node-sass": "^4.14.1",
24 "normalize.css": "7.0.0", 24 "normalize.css": "7.0.0",
25 "nprogress": "0.2.0", 25 "nprogress": "0.2.0",
26 "print-js": "^1.6.0",
26 "qrcode": "^1.5.3", 27 "qrcode": "^1.5.3",
27 "vue": "2.6.10", 28 "vue": "2.6.10",
28 "vue-json-editor": "^1.4.3", 29 "vue-json-editor": "^1.4.3",
......
...@@ -16,6 +16,7 @@ import Loading from '@/components/Loading/index.js'; ...@@ -16,6 +16,7 @@ import Loading from '@/components/Loading/index.js';
16 import '@riophae/vue-treeselect/dist/vue-treeselect.css' 16 import '@riophae/vue-treeselect/dist/vue-treeselect.css'
17 import { startLoadingAddCount, endLoadingSubCount } from './utils/requestLoading' 17 import { startLoadingAddCount, endLoadingSubCount } from './utils/requestLoading'
18 import Print from 'vue-print-nb' 18 import Print from 'vue-print-nb'
19 import printJS from 'print-js'
19 Vue.use(Print); 20 Vue.use(Print);
20 Vue.mixin(mixin); 21 Vue.mixin(mixin);
21 Vue.use(Loading.directive); 22 Vue.use(Loading.directive);
...@@ -27,7 +28,6 @@ Vue.prototype.$x2js = new x2js() ...@@ -27,7 +28,6 @@ Vue.prototype.$x2js = new x2js()
27 // 全局加载 28 // 全局加载
28 Vue.prototype.$startLoading = startLoadingAddCount 29 Vue.prototype.$startLoading = startLoadingAddCount
29 Vue.prototype.$endLoading = endLoadingSubCount 30 Vue.prototype.$endLoading = endLoadingSubCount
30
31 // 弹框 31 // 弹框
32 import { popupDialog, popupCacel } from "./utils/popup.js"; 32 import { popupDialog, popupCacel } from "./utils/popup.js";
33 // 全局加载 33 // 全局加载
......
...@@ -41,4 +41,4 @@ export function getDictLeabel (level, code) { ...@@ -41,4 +41,4 @@ export function getDictLeabel (level, code) {
41 return node.dcode === level 41 return node.dcode === level
42 }) 42 })
43 return data.dname 43 return data.dname
44 }
...\ No newline at end of file ...\ No newline at end of file
44 }
......
...@@ -6,12 +6,14 @@ ...@@ -6,12 +6,14 @@
6 <template> 6 <template>
7 <div class="djxxTable"> 7 <div class="djxxTable">
8 <div v-show="false"> 8 <div v-show="false">
9 <printTemplate id="box" :propsParam="propsParam" :tableData="tableData"/> 9 <printTemplate id="boxcfdj" :propsParam="propsParam" :tableData="tableData" :render="render"/>
10 </div> 10 </div>
11 <div class="tableBox"> 11 <div class="tableBox">
12 <div class="title"> 12 <div class="title">
13 {{ title }} 13 {{ title }}
14 <el-button class="print" v-show="shows" v-print="printObj">打印</el-button> 14 <el-button class="print" v-show="shows" @click="openPrint()"
15 >打印</el-button
16 >
15 <div class="checkbox"> 17 <div class="checkbox">
16 <el-checkbox-group v-model="checkList" @change="checkChange"> 18 <el-checkbox-group v-model="checkList" @change="checkChange">
17 <el-checkbox 19 <el-checkbox
...@@ -125,12 +127,42 @@ export default { ...@@ -125,12 +127,42 @@ export default {
125 emptycolNum: datas.columns().emptycolNum, 127 emptycolNum: datas.columns().emptycolNum,
126 //列名称对象 128 //列名称对象
127 columns: datas.columns().CFDJ, 129 columns: datas.columns().CFDJ,
130 render: false,
128 }; 131 };
129 }, 132 },
130 created() { 133 created() {
131 this.loadData(); 134 this.loadData();
132 }, 135 },
133 methods: { 136 methods: {
137 /**
138 * @description: openPrint
139 * @author: miaofang
140 */
141 openPrint() {
142 this.render = true;
143 setTimeout(() => {
144 this.prinsss();
145 }, 100);
146 },
147 /**
148 * @description: prinsss
149 * @author: miaofang
150 */
151 prinsss() {
152 printJS({
153 printable: "boxcfdj", // // 文档来源:pdf或图像的url,html元素的id或json数据的对象
154 type: "html",
155 maxWidth: 800, // 最大宽度
156 font_size: "", // 不设置则使用默认字体大小
157 style: `@font-face {
158 font-family: "STZHONGS";
159 src: url(${window.ttf}) format("truetype");
160 }`,
161 // 继承原来的所有样式
162 targetStyles: ["*"],
163 });
164 this.render=false
165 },
134 /** 166 /**
135 * @description: loadData 167 * @description: loadData
136 * @author: renchao 168 * @author: renchao
......
...@@ -5,18 +5,27 @@ ...@@ -5,18 +5,27 @@
5 --> 5 -->
6 <template> 6 <template>
7 <div id="box"> 7 <div id="box">
8 <div class="tbalede" v-for="(el, indexx) in datass" :key="indexx" style="page-break-after: always"> 8 <div
9 class="tbalede"
10 v-for="(el, indexx) in datass"
11 :key="indexx"
12 style="page-break-after: always"
13 >
9 <div class="title">{{ title }}</div> 14 <div class="title">{{ title }}</div>
10 <table class="xxTable"> 15 <table class="xxTable">
11 <tr v-for="(item) in columns" :key="item.name"> 16 <tr v-for="item in columns" :key="item.name">
12 <td> 17 <td>
13 {{ item.despriction }} 18 {{ item.despriction }}
14 </td> 19 </td>
15 <td v-for="(row, index) in el" :key="index+'2'"> 20 <td v-for="(row, index) in el" :key="index + '2'">
16 {{ row[item.name] }} 21 {{ row[item.name] }}
17 </td> 22 </td>
18 23
19 <td v-show="el.emptycolNum" v-for="count in emptycolNum" :key="count"></td> 24 <td
25 v-show="el.emptycolNum"
26 v-for="count in emptycolNum"
27 :key="count"
28 ></td>
20 </tr> 29 </tr>
21 </table> 30 </table>
22 </div> 31 </div>
...@@ -32,13 +41,12 @@ export default { ...@@ -32,13 +41,12 @@ export default {
32 data() { 41 data() {
33 return { 42 return {
34 title: this.$parent.title, 43 title: this.$parent.title,
35 checkList: datas.columns().checkList,
36 //列表数据 44 //列表数据
37 //空列值个数 45 //空列值个数
38 emptycolNum:3, 46 emptycolNum: 4,
39 //列名称对象 47 //列名称对象
40 columns: [], 48 columns: [],
41 datass:[], 49 datass: [],
42 }; 50 };
43 }, 51 },
44 props: { 52 props: {
...@@ -46,50 +54,55 @@ export default { ...@@ -46,50 +54,55 @@ export default {
46 type: Object, 54 type: Object,
47 default: () => {}, 55 default: () => {},
48 }, 56 },
49 tableData: { 57 tableData: {
50 type: Array, 58 type: Array,
51 default: () => [], 59 default: () => [],
52 }, 60 },
61 render:{
62 type: Boolean,
63 default: false,
64 }
53 }, 65 },
54 created() { 66 created() {},
55 },
56 watch: { 67 watch: {
57 tableData: { 68 tableData: {
58 handler (newValue, oldValue) { 69 handler(newValue, oldValue) {
59 this.tableData=newValue 70 this.tableData = newValue;
60 this.loadData() 71 },
61 }, 72 },
62 } 73 render: {
74 handler(newValue, oldValue) {
75 this.loadData();
76 },
77 },
78 immediate: true,
79 deep: true,
63 }, 80 },
64 methods: { 81 methods: {
65 /** 82 /**
66 * @description: loadData 83 * @description: loadData
67 * @author: renchao 84 * @author: miaofang
68 */ 85 */
69 loadData() { 86 loadData() {
70 getFieldListByQlxx({ 87 getFieldListByQlxx({
71 qllx: this.propsParam.qllx 88 qllx: this.propsParam.qllx,
72 }).then((res) => { 89 }).then((res) => {
73 if (res.code === 200) { 90 if (res.code === 200) {
74 this.columns = res.result; 91 this.columns = res.result;
75
76 } 92 }
77 }); 93 });
78 94 if (this.tableData.length&&this.datass.length==0) {
79 this.tableData.forEach((item) => { 95 for (let i = 0; i < this.tableData.length; i += 4) {
80 item.sjlx = getSjlx(item.sjlx); 96 this.datass.push(this.tableData.slice(i, i + 4));
81 }) 97 }
82 for (let i = 0; i < this.tableData.length; i+=3) { 98 let num = this.datass[this.datass.length - 1].length;
83 this.datass.push(this.tableData.slice(i,i+3)) 99 if (num < 4) {
84 } 100 this.emptycolNum = 4 - num;
85 let num=this.datass[this.datass.length-1].length 101 this.datass[this.datass.length - 1].emptycolNum = true;
86 if (num < 3) { 102 } else {
87 this.emptycolNum = 103 this.emptycolNum = 0;
88 3 - num; 104 }
89 this.datass[this.datass.length-1].emptycolNum=true 105 }
90 } else {
91 this.emptycolNum = 0;
92 }
93 }, 106 },
94 }, 107 },
95 }; 108 };
...@@ -97,7 +110,7 @@ export default { ...@@ -97,7 +110,7 @@ export default {
97 110
98 <style lang="scss" scoped> 111 <style lang="scss" scoped>
99 .tbalede { 112 .tbalede {
100 width: 794px; 113 width: 100%;
101 // height: 1123px; 114 // height: 1123px;
102 margin: auto; 115 margin: auto;
103 .title { 116 .title {
...@@ -124,6 +137,17 @@ export default { ...@@ -124,6 +137,17 @@ export default {
124 min-width: 80px; 137 min-width: 80px;
125 padding: 5px; 138 padding: 5px;
126 } 139 }
140 td {
141 width: 20px!important;
142 word-break: break-all;
143 // /* 方法一:使用 word-break */
144 // word-break: break-all;
145 // // /* 方法二:使用 white-space */
146 // // white-space: pre-wrap;
147 // // /* 方法三:使用 overflow-wrap */
148 // // overflow-wrap: break-word;
149 }
150
127 } 151 }
128 } 152 }
129 </style> 153 </style>
......
...@@ -6,12 +6,14 @@ ...@@ -6,12 +6,14 @@
6 <template> 6 <template>
7 <div class="djxxTable"> 7 <div class="djxxTable">
8 <div v-show="false"> 8 <div v-show="false">
9 <printTemplate id="box" :propsParam="propsParam" :tableData="tableData"/> 9 <printTemplate id="boxdiyaq" :propsParam="propsParam" :tableData="tableData" :render="render"/>
10 </div> 10 </div>
11 <div class="tableBox"> 11 <div class="tableBox">
12 <div class="title"> 12 <div class="title">
13 {{ title }} 13 {{ title }}
14 <el-button class="print" v-show="shows" v-print="printObj">打印</el-button> 14 <el-button class="print" v-show="shows" @click="openPrint()"
15 >打印</el-button
16 >
15 <div class="checkbox"> 17 <div class="checkbox">
16 <el-checkbox-group v-model="checkList" @change="checkChange"> 18 <el-checkbox-group v-model="checkList" @change="checkChange">
17 <el-checkbox 19 <el-checkbox
...@@ -127,12 +129,42 @@ export default { ...@@ -127,12 +129,42 @@ export default {
127 emptycolNum: datas.columns().emptycolNum, 129 emptycolNum: datas.columns().emptycolNum,
128 //列名称对象 130 //列名称对象
129 columns: datas.columns().DYAQ, 131 columns: datas.columns().DYAQ,
132 render: false,
130 }; 133 };
131 }, 134 },
132 created() { 135 created() {
133 this.loadData(); 136 this.loadData();
134 }, 137 },
135 methods: { 138 methods: {
139 /**
140 * @description: openPrint
141 * @author: miaofang
142 */
143 openPrint() {
144 this.render = true;
145 setTimeout(() => {
146 this.prinsss();
147 }, 100);
148 },
149 /**
150 * @description: prinsss
151 * @author: miaofang
152 */
153 prinsss() {
154 printJS({
155 printable: "boxdiyaq", // // 文档来源:pdf或图像的url,html元素的id或json数据的对象
156 type: "html",
157 maxWidth: 800, // 最大宽度
158 font_size: "", // 不设置则使用默认字体大小
159 style: `@font-face {
160 font-family: "STZHONGS";
161 src: url(${window.ttf}) format("truetype");
162 }`,
163 // 继承原来的所有样式
164 targetStyles: ["*"],
165 });
166 this.render=false
167 },
136 /** 168 /**
137 * @description: loadData 169 * @description: loadData
138 * @author: renchao 170 * @author: renchao
......
1 <!-- 1 <!--
2 * @Description: 2 * @Description:
3 * @Autor: renchao 3 * @Autor: miaofang
4 * @LastEditTime: 2023-08-23 15:54:12 4 * @LastEditTime: 2023-08-23 15:54:12
5 --> 5 -->
6 <template> 6 <template>
7 <div class="djxxTable"> 7 <div class="djxxTable">
8 <div v-show="false"> 8 <div v-show="false">
9 <printTemplate id="box" :propsParam="propsParam" :tableData="tableData"/> 9 <printTemplate id="boxdiyiq" :propsParam="propsParam" :tableData="tableData" :render="render"/>
10 </div> 10 </div>
11 <div class="tableBox"> 11 <div class="tableBox">
12 <div class="title"> 12 <div class="title">
13 {{ title }} 13 {{ title }}
14 <el-button class="print" v-show="shows" v-print="printObj">打印</el-button> 14 <el-button class="print" v-show="shows" @click="openPrint()"
15 >打印</el-button
16 >
15 <div class="checkbox"> 17 <div class="checkbox">
16 <el-checkbox-group v-model="checkList" @change="checkChange"> 18 <el-checkbox-group v-model="checkList" @change="checkChange">
17 <el-checkbox 19 <el-checkbox
...@@ -127,15 +129,44 @@ export default { ...@@ -127,15 +129,44 @@ export default {
127 emptycolNum: datas.columns().emptycolNum, 129 emptycolNum: datas.columns().emptycolNum,
128 //列名称对象 130 //列名称对象
129 columns: datas.columns().DYIQ, 131 columns: datas.columns().DYIQ,
132 render: false,
130 }; 133 };
131 }, 134 },
132 created() { 135 created() {
133 this.loadData(); 136 this.loadData();
134 }, 137 },
135 methods: { 138 methods: { /**
139 * @description: openPrint
140 * @author: miaofang
141 */
142 openPrint() {
143 this.render = true;
144 setTimeout(() => {
145 this.prinsss();
146 }, 100);
147 },
148 /**
149 * @description: prinsss
150 * @author: miaofang
151 */
152 prinsss() {
153 printJS({
154 printable: "boxdiyiq", // // 文档来源:pdf或图像的url,html元素的id或json数据的对象
155 type: "html",
156 maxWidth: 800, // 最大宽度
157 font_size: "", // 不设置则使用默认字体大小
158 style: `@font-face {
159 font-family: "STZHONGS";
160 src: url(${window.ttf}) format("truetype");
161 }`,
162 // 继承原来的所有样式
163 targetStyles: ["*"],
164 });
165 this.render=false
166 },
136 /** 167 /**
137 * @description: loadData 168 * @description: loadData
138 * @author: renchao 169 * @author: miaofang
139 */ 170 */
140 loadData() { 171 loadData() {
141 if (this.$parent.addRepairRecord) { 172 if (this.$parent.addRepairRecord) {
...@@ -164,7 +195,7 @@ export default { ...@@ -164,7 +195,7 @@ export default {
164 }, 195 },
165 /** 196 /**
166 * @description: checkChange 197 * @description: checkChange
167 * @author: renchao 198 * @author: miaofang
168 */ 199 */
169 checkChange() { 200 checkChange() {
170 if (this.checkList.length === 0) { 201 if (this.checkList.length === 0) {
...@@ -177,7 +208,7 @@ export default { ...@@ -177,7 +208,7 @@ export default {
177 /** 208 /**
178 * @description: getQsztName 209 * @description: getQsztName
179 * @param {*} code 210 * @param {*} code
180 * @author: renchao 211 * @author: miaofang
181 */ 212 */
182 getQsztName(code) { 213 getQsztName(code) {
183 let name = ""; 214 let name = "";
...@@ -194,7 +225,7 @@ export default { ...@@ -194,7 +225,7 @@ export default {
194 * @description: 新增一条补录信息 225 * @description: 新增一条补录信息
195 * @param {*} row 226 * @param {*} row
196 * @param {*} del 227 * @param {*} del
197 * @author: renchao 228 * @author: miaofang
198 */ 229 */
199 editDialog(row, del) { 230 editDialog(row, del) {
200 this.$confirm("此操作将新增一条补录信息, 是否继续?", "提示", { 231 this.$confirm("此操作将新增一条补录信息, 是否继续?", "提示", {
......
1 <!-- 1 <!--
2 * @Description: 2 * @Description:
3 * @Autor: renchao 3 * @Autor: miaofang
4 * @LastEditTime: 2023-08-23 15:54:12 4 * @LastEditTime: 2023-08-23 15:54:12
5 --> 5 -->
6 <template> 6 <template>
7 <div class="djxxTable"> 7 <div class="djxxTable">
8 <div v-show="false"> 8 <div v-show="false">
9 <printTemplate id="box" :propsParam="propsParam" :tableData="tableData"/> 9 <printTemplate
10 id="boxfdcq"
11 :propsParam="propsParam" :tableData="tableData" :render="render"/>
10 </div> 12 </div>
11 <div class="tableBox"> 13 <div class="tableBox">
12 <div class="title"> 14 <div class="title">
13 {{ title }} 15 {{ title }}
14 <el-button class="print" v-show="shows" v-print="printObj">打印</el-button> 16 <el-button class="print" v-show="shows" @click="openPrint()"
17 >打印</el-button
18 >
15 <div class="checkbox"> 19 <div class="checkbox">
16 <el-checkbox-group v-model="checkList" @change="checkChange"> 20 <el-checkbox-group v-model="checkList" @change="checkChange">
17 <el-checkbox 21 <el-checkbox
...@@ -121,7 +125,7 @@ ...@@ -121,7 +125,7 @@
121 </template> 125 </template>
122 126
123 <script> 127 <script>
124 128 import printJS from "print-js";
125 import { datas } from "./qlxxFormData.js"; 129 import { datas } from "./qlxxFormData.js";
126 import { getSjlx } from "@/utils/dictionary.js"; 130 import { getSjlx } from "@/utils/dictionary.js";
127 import { getFdcq1List } from "@/api/djbDetail.js"; 131 import { getFdcq1List } from "@/api/djbDetail.js";
...@@ -136,7 +140,7 @@ export default { ...@@ -136,7 +140,7 @@ export default {
136 id: "box", 140 id: "box",
137 //其他配置项, 141 //其他配置项,
138 }, 142 },
139 shows:false, 143 shows: false,
140 title: "房地产权登记信息(多幢)", 144 title: "房地产权登记信息(多幢)",
141 qsztList: datas.columns().qsztList, 145 qsztList: datas.columns().qsztList,
142 checkList: datas.columns().checkList, 146 checkList: datas.columns().checkList,
...@@ -144,22 +148,54 @@ export default { ...@@ -144,22 +148,54 @@ export default {
144 propsParam: this.$attrs, 148 propsParam: this.$attrs,
145 //列表数据 149 //列表数据
146 tableData: [], 150 tableData: [],
151 // 异步传值
152 datalist: [],
147 //空列值个数 153 //空列值个数
148 emptycolNum: datas.columns().emptycolNum, 154 emptycolNum: datas.columns().emptycolNum,
149 //列名称对象 155 //列名称对象
150 columns: datas.columns().FDCQ1, 156 columns: datas.columns().FDCQ1,
157 render: false,
151 }; 158 };
152 }, 159 },
153 created() { 160 created() {
154 this.loadData(); 161 this.loadData();
155 }, 162 },
156 methods: { 163 methods: {
164 /**
165 * @description: openPrint
166 * @author: miaofang
167 */
168 openPrint() {
169 this.render = true;
170 setTimeout(() => {
171 this.prinsss();
172 }, 100);
173 },
174 /**
175 * @description: prinsss
176 * @author: miaofang
177 */
178 prinsss() {
179 printJS({
180 printable: "boxfdcq", // // 文档来源:pdf或图像的url,html元素的id或json数据的对象
181 type: "html",
182 maxWidth: 800, // 最大宽度
183 font_size: "", // 不设置则使用默认字体大小
184 style: `@font-face {
185 font-family: "STZHONGS";
186 src: url(${window.ttf}) format("truetype");
187 }`,
188 // 继承原来的所有样式
189 targetStyles: ["*"],
190 });
191 this.render=false
192 },
157 /** 193 /**
158 * @description: loadData 194 * @description: loadData
159 * @author: renchao 195 * @author: miaofang
160 */ 196 */
161 loadData() { 197 loadData() {
162 if (this.$parent.addRepairRecord) { 198 if (this.$parent.addRepairRecord) {
163 this.columns.unshift({ prop: "cz", label: "操作" }); 199 this.columns.unshift({ prop: "cz", label: "操作" });
164 } 200 }
165 getFdcq1List({ 201 getFdcq1List({
...@@ -169,7 +205,7 @@ export default { ...@@ -169,7 +205,7 @@ export default {
169 }).then((res) => { 205 }).then((res) => {
170 if (res.code === 200) { 206 if (res.code === 200) {
171 this.tableData = res.result; 207 this.tableData = res.result;
172 this.shows=this.tableData.length>0 208 this.shows = this.tableData.length > 0;
173 this.tableData.forEach((item) => { 209 this.tableData.forEach((item) => {
174 item.sjlx = getSjlx(item.sjlx); 210 item.sjlx = getSjlx(item.sjlx);
175 }); 211 });
...@@ -184,7 +220,7 @@ export default { ...@@ -184,7 +220,7 @@ export default {
184 }, 220 },
185 /** 221 /**
186 * @description: checkChange 222 * @description: checkChange
187 * @author: renchao 223 * @author: miaofang
188 */ 224 */
189 checkChange() { 225 checkChange() {
190 if (this.checkList.length === 0) { 226 if (this.checkList.length === 0) {
...@@ -197,7 +233,7 @@ export default { ...@@ -197,7 +233,7 @@ export default {
197 /** 233 /**
198 * @description: getQsztName 234 * @description: getQsztName
199 * @param {*} code 235 * @param {*} code
200 * @author: renchao 236 * @author: miaofang
201 */ 237 */
202 getQsztName(code) { 238 getQsztName(code) {
203 let name = ""; 239 let name = "";
...@@ -212,7 +248,7 @@ export default { ...@@ -212,7 +248,7 @@ export default {
212 /** 248 /**
213 * @description: judge 249 * @description: judge
214 * @param {*} lable 250 * @param {*} lable
215 * @author: renchao 251 * @author: miaofang
216 */ 252 */
217 judge(label) { 253 judge(label) {
218 if ( 254 if (
...@@ -230,7 +266,7 @@ export default { ...@@ -230,7 +266,7 @@ export default {
230 * @description: 新增一条补录信息 266 * @description: 新增一条补录信息
231 * @param {*} row 267 * @param {*} row
232 * @param {*} del 268 * @param {*} del
233 * @author: renchao 269 * @author: miaofang
234 */ 270 */
235 editDialog(row, del) { 271 editDialog(row, del) {
236 this.$confirm("此操作将新增一条补录信息, 是否继续?", "提示", { 272 this.$confirm("此操作将新增一条补录信息, 是否继续?", "提示", {
......
1 <!-- 1 <!--
2 * @Description: 2 * @Description:
3 * @Autor: renchao 3 * @Autor: miaofang
4 * @LastEditTime: 2023-08-23 15:54:12 4 * @LastEditTime: 2023-08-23 15:54:12
5 --> 5 -->
6 <template> 6 <template>
7 <div class="djxxTable"> 7 <div class="djxxTable">
8 <div v-show="false"> 8 <div>
9 <printTemplate id="box" :propsParam="propsParam" :tableData="tableData"/> 9 <printTemplate
10 id="boxfdcq"
11 :propsParam="propsParam"
12 :tableData="tableData"
13 :render="render"
14 />
10 </div> 15 </div>
11 <div class="tableBox"> 16 <div class="tableBox">
12 <div class="title"> 17 <div class="title">
13 {{ title }} 18 {{ title }}
14 <el-button class="print" v-show="shows" v-print="printObj">打印</el-button> 19 <el-button class="print" v-show="shows" @click="openPrint()"
20 >打印</el-button
21 >
15 <div class="checkbox"> 22 <div class="checkbox">
16 <el-checkbox-group v-model="checkList" @change="checkChange"> 23 <el-checkbox-group v-model="checkList" @change="checkChange">
17 <el-checkbox 24 <el-checkbox
...@@ -106,16 +113,13 @@ import { datas } from "./qlxxFormData.js"; ...@@ -106,16 +113,13 @@ import { datas } from "./qlxxFormData.js";
106 import { getSjlx } from "@/utils/dictionary.js"; 113 import { getSjlx } from "@/utils/dictionary.js";
107 import { getFdcq2List } from "@/api/djbDetail.js"; 114 import { getFdcq2List } from "@/api/djbDetail.js";
108 export default { 115 export default {
109 components: { 116 components: {
110 printTemplate, 117 printTemplate,
111 }, 118 },
112 data() { 119 data() {
113 return { 120 return {
114 printObj: { 121
115 id: "box", 122 shows: false,
116 //其他配置项,
117 },
118 shows:false,
119 title: "房地产权登记信息(独幢、层、套、间房屋)", 123 title: "房地产权登记信息(独幢、层、套、间房屋)",
120 qsztList: datas.columns().qsztList, 124 qsztList: datas.columns().qsztList,
121 checkList: datas.columns().checkList, 125 checkList: datas.columns().checkList,
...@@ -127,6 +131,7 @@ export default { ...@@ -127,6 +131,7 @@ export default {
127 emptycolNum: datas.columns().emptycolNum, 131 emptycolNum: datas.columns().emptycolNum,
128 //列名称对象 132 //列名称对象
129 columns: datas.columns().FDCQ2, 133 columns: datas.columns().FDCQ2,
134 render: false,
130 }; 135 };
131 }, 136 },
132 created() { 137 created() {
...@@ -134,8 +139,37 @@ export default { ...@@ -134,8 +139,37 @@ export default {
134 }, 139 },
135 methods: { 140 methods: {
136 /** 141 /**
142 * @description: openPrint
143 * @author: miaofang
144 */
145 openPrint() {
146 this.render = true;
147 setTimeout(() => {
148 this.prinsss();
149 }, 100);
150 },
151 /**
152 * @description: prinsss
153 * @author: miaofang
154 */
155 prinsss() {
156 printJS({
157 printable: "boxfdcq", // // 文档来源:pdf或图像的url,html元素的id或json数据的对象
158 type: "html",
159 maxWidth: 800, // 最大宽度
160 font_size: "", // 不设置则使用默认字体大小
161 style: `@font-face {
162 font-family: "STZHONGS";
163 src: url(${window.ttf}) format("truetype");
164 }`,
165 // 继承原来的所有样式
166 targetStyles: ["*"],
167 });
168 this.render = false
169 },
170 /**
137 * @description: loadData 171 * @description: loadData
138 * @author: renchao 172 * @author: miaofang
139 */ 173 */
140 loadData() { 174 loadData() {
141 if (this.$parent.addRepairRecord) { 175 if (this.$parent.addRepairRecord) {
...@@ -148,8 +182,7 @@ export default { ...@@ -148,8 +182,7 @@ export default {
148 }).then((res) => { 182 }).then((res) => {
149 if (res.code === 200) { 183 if (res.code === 200) {
150 this.tableData = res.result; 184 this.tableData = res.result;
151 this.shows=this.tableData.length>0 185 this.shows = this.tableData.length > 0;
152 console.log("this.tableData111",this.tableData);
153 this.tableData.forEach((item) => { 186 this.tableData.forEach((item) => {
154 item.sjlx = getSjlx(item.sjlx); 187 item.sjlx = getSjlx(item.sjlx);
155 }); 188 });
...@@ -164,7 +197,7 @@ export default { ...@@ -164,7 +197,7 @@ export default {
164 }, 197 },
165 /** 198 /**
166 * @description: checkChange 199 * @description: checkChange
167 * @author: renchao 200 * @author: miaofang
168 */ 201 */
169 checkChange() { 202 checkChange() {
170 if (this.checkList.length === 0) { 203 if (this.checkList.length === 0) {
...@@ -177,7 +210,7 @@ export default { ...@@ -177,7 +210,7 @@ export default {
177 /** 210 /**
178 * @description: getQsztName 211 * @description: getQsztName
179 * @param {*} code 212 * @param {*} code
180 * @author: renchao 213 * @author: miaofang
181 */ 214 */
182 getQsztName(code) { 215 getQsztName(code) {
183 let name = ""; 216 let name = "";
...@@ -194,7 +227,7 @@ export default { ...@@ -194,7 +227,7 @@ export default {
194 * @description: 新增一条补录信息 227 * @description: 新增一条补录信息
195 * @param {*} row 228 * @param {*} row
196 * @param {*} del 229 * @param {*} del
197 * @author: renchao 230 * @author: miaofang
198 */ 231 */
199 editDialog(row, del) { 232 editDialog(row, del) {
200 this.$confirm("此操作将新增一条补录信息, 是否继续?", "提示", { 233 this.$confirm("此操作将新增一条补录信息, 是否继续?", "提示", {
......
1 <!-- 1 <!--
2 * @Description: 2 * @Description:
3 * @Autor: renchao 3 * @Autor: miaofang
4 * @LastEditTime: 2023-08-23 15:54:12 4 * @LastEditTime: 2023-08-23 15:54:12
5 --> 5 -->
6 <template> 6 <template>
7 <div class="djxxTable"> 7 <div class="djxxTable">
8 <div v-show="false"> 8 <div v-show="false">
9 <printTemplate id="box" :propsParam="propsParam" :tableData="tableData"/> 9 <printTemplate
10 id="boxjsydsyq"
11 :propsParam="propsParam"
12 :tableData="tableData"
13 :render="render"
14 />
10 </div> 15 </div>
11 <div class="tableBox"> 16 <div class="tableBox">
12 <div class="title"> 17 <div class="title">
13 {{ title }} 18 {{ title }}
14 <el-button class="print" v-show="shows" v-print="printObj">打印</el-button> 19 <el-button class="print" v-show="shows" @click="openPrint()"
20 >打印</el-button
21 >
15 <div class="checkbox"> 22 <div class="checkbox">
16 <el-checkbox-group v-model="checkList" @change="checkChange"> 23 <el-checkbox-group v-model="checkList" @change="checkChange">
17 <el-checkbox 24 <el-checkbox
...@@ -115,7 +122,7 @@ export default { ...@@ -115,7 +122,7 @@ export default {
115 id: "box", 122 id: "box",
116 //其他配置项, 123 //其他配置项,
117 }, 124 },
118 shows:false, 125 shows: false,
119 title: "建设用地使用权、宅基地使用权登记信息", 126 title: "建设用地使用权、宅基地使用权登记信息",
120 qsztList: datas.columns().qsztList, 127 qsztList: datas.columns().qsztList,
121 checkList: datas.columns().checkList, 128 checkList: datas.columns().checkList,
...@@ -127,18 +134,47 @@ export default { ...@@ -127,18 +134,47 @@ export default {
127 emptycolNum: datas.columns().emptycolNum, 134 emptycolNum: datas.columns().emptycolNum,
128 //列名称对象 135 //列名称对象
129 columns: datas.columns().JSYDSYQ, 136 columns: datas.columns().JSYDSYQ,
137 render: false,
130 }; 138 };
131 }, 139 },
132 created() { 140 created() {
133 this.loadData(); 141 this.loadData();
134 }, 142 },
135 methods: { 143 methods: {
144 /**
145 * @description: openPrint
146 * @author: miaofang
147 */
148 openPrint() {
149 this.render = true;
150 setTimeout(() => {
151 this.prinsss();
152 }, 100);
153 },
154 /**
155 * @description: prinsss
156 * @author: miaofang
157 */
158 prinsss() {
159 printJS({
160 printable: "boxjsydsyq", // // 文档来源:pdf或图像的url,html元素的id或json数据的对象
161 type: "html",
162 maxWidth: 800, // 最大宽度
163 font_size: "", // 不设置则使用默认字体大小
164 style: `@font-face {
165 font-family: "STZHONGS";
166 src: url(${window.ttf}) format("truetype");
167 }`,
168 // 继承原来的所有样式
169 targetStyles: ["*"],
170 });
171 this.render=false
172 },
136 /** 173 /**
137 * @description: loadData 174 * @description: loadData
138 * @author: renchao 175 * @author: miaofang
139 */ 176 */
140 loadData() { 177 loadData() {
141
142 getJsydsyqList({ 178 getJsydsyqList({
143 bdcdyid: this.propsParam.bdcdyid, 179 bdcdyid: this.propsParam.bdcdyid,
144 qllx: this.propsParam.qllx, 180 qllx: this.propsParam.qllx,
...@@ -146,7 +182,7 @@ export default { ...@@ -146,7 +182,7 @@ export default {
146 }).then((res) => { 182 }).then((res) => {
147 if (res.code === 200) { 183 if (res.code === 200) {
148 this.tableData = res.result; 184 this.tableData = res.result;
149 this.shows=this.tableData.length>0 185 this.shows = this.tableData.length > 0;
150 this.tableData.forEach((item) => { 186 this.tableData.forEach((item) => {
151 item.sjlx = getSjlx(item.sjlx); 187 item.sjlx = getSjlx(item.sjlx);
152 }); 188 });
...@@ -161,7 +197,7 @@ export default { ...@@ -161,7 +197,7 @@ export default {
161 }, 197 },
162 /** 198 /**
163 * @description: checkChange 199 * @description: checkChange
164 * @author: renchao 200 * @author: miaofang
165 */ 201 */
166 checkChange() { 202 checkChange() {
167 if (this.checkList.length === 0) { 203 if (this.checkList.length === 0) {
...@@ -174,7 +210,7 @@ export default { ...@@ -174,7 +210,7 @@ export default {
174 /** 210 /**
175 * @description: getQsztName 211 * @description: getQsztName
176 * @param {*} code 212 * @param {*} code
177 * @author: renchao 213 * @author: miaofang
178 */ 214 */
179 getQsztName(code) { 215 getQsztName(code) {
180 let name = ""; 216 let name = "";
...@@ -191,7 +227,7 @@ export default { ...@@ -191,7 +227,7 @@ export default {
191 * @description: 新增一条补录信息 227 * @description: 新增一条补录信息
192 * @param {*} row 228 * @param {*} row
193 * @param {*} del 229 * @param {*} del
194 * @author: renchao 230 * @author: miaofang
195 */ 231 */
196 editDialog(row, del) { 232 editDialog(row, del) {
197 this.$confirm("此操作将新增一条补录信息, 是否继续?", "提示", { 233 this.$confirm("此操作将新增一条补录信息, 是否继续?", "提示", {
...@@ -220,14 +256,14 @@ export default { ...@@ -220,14 +256,14 @@ export default {
220 256
221 <style lang="scss" scoped> 257 <style lang="scss" scoped>
222 @import "./qlxxCommon.scss"; 258 @import "./qlxxCommon.scss";
223 .title { 259 .title {
224 position: relative; 260 position: relative;
225 .print { 261 .print {
226 // background-color: #0079fe; 262 // background-color: #0079fe;
227 z-index: 10; 263 z-index: 10;
228 position: absolute; 264 position: absolute;
229 left: 11px; 265 left: 11px;
230 top: 5px; 266 top: 5px;
231 } 267 }
232 } 268 }
233 </style> 269 </style>
......
1 <!-- 1 <!--
2 * @Description: 2 * @Description:
3 * @Autor: renchao 3 * @Autor: miaofang
4 * @LastEditTime: 2023-08-23 15:54:12 4 * @LastEditTime: 2023-08-23 15:54:12
5 --> 5 -->
6 <template> 6 <template>
7 <div class="djxxTable"> 7 <div class="djxxTable">
8 <div v-show="false"> 8 <div v-show="false">
9 <printTemplate id="box" :propsParam="propsParam" :tableData="tableData"/> 9 <printTemplate
10 id="boxldsyq"
11 :propsParam="propsParam"
12 :tableData="tableData"
13 :render="render"
14 />
10 </div> 15 </div>
11 <div class="tableBox"> 16 <div class="tableBox">
12 <div class="title"> 17 <div class="title">
13 {{ title }} 18 {{ title }}
14 <el-button class="print" v-show="shows" v-print="printObj">打印</el-button> 19 <el-button class="print" v-show="shows" @click="openPrint()"
20 >打印</el-button
21 >
15 <div class="checkbox"> 22 <div class="checkbox">
16 <el-checkbox-group v-model="checkList" @change="checkChange"> 23 <el-checkbox-group v-model="checkList" @change="checkChange">
17 <el-checkbox 24 <el-checkbox
...@@ -113,7 +120,7 @@ export default { ...@@ -113,7 +120,7 @@ export default {
113 id: "box", 120 id: "box",
114 //其他配置项, 121 //其他配置项,
115 }, 122 },
116 shows:false, 123 shows: false,
117 title: "林权登记信息", 124 title: "林权登记信息",
118 qsztList: datas.columns().qsztList, 125 qsztList: datas.columns().qsztList,
119 checkList: datas.columns().checkList, 126 checkList: datas.columns().checkList,
...@@ -125,6 +132,7 @@ export default { ...@@ -125,6 +132,7 @@ export default {
125 emptycolNum: datas.columns().emptycolNum, 132 emptycolNum: datas.columns().emptycolNum,
126 //列名称对象 133 //列名称对象
127 columns: datas.columns().LDSYQ, 134 columns: datas.columns().LDSYQ,
135 render: false,
128 }; 136 };
129 }, 137 },
130 created() { 138 created() {
...@@ -132,8 +140,37 @@ export default { ...@@ -132,8 +140,37 @@ export default {
132 }, 140 },
133 methods: { 141 methods: {
134 /** 142 /**
143 * @description: openPrint
144 * @author: miaofang
145 */
146 openPrint() {
147 this.render = true;
148 setTimeout(() => {
149 this.prinsss();
150 }, 100);
151 },
152 /**
153 * @description: prinsss
154 * @author: miaofang
155 */
156 prinsss() {
157 printJS({
158 printable: "boxldsyq", // // 文档来源:pdf或图像的url,html元素的id或json数据的对象
159 type: "html",
160 maxWidth: 800, // 最大宽度
161 font_size: "", // 不设置则使用默认字体大小
162 style: `@font-face {
163 font-family: "STZHONGS";
164 src: url(${window.ttf}) format("truetype");
165 }`,
166 // 继承原来的所有样式
167 targetStyles: ["*"],
168 });
169 this.render=false
170 },
171 /**
135 * @description: loadData 172 * @description: loadData
136 * @author: renchao 173 * @author: miaofang
137 */ 174 */
138 loadData() { 175 loadData() {
139 if (this.$parent.addRepairRecord) { 176 if (this.$parent.addRepairRecord) {
...@@ -149,7 +186,7 @@ export default { ...@@ -149,7 +186,7 @@ export default {
149 }).then((res) => { 186 }).then((res) => {
150 if (res.code === 200) { 187 if (res.code === 200) {
151 this.tableData = res.result; 188 this.tableData = res.result;
152 this.shows=this.tableData.length>0 189 this.shows = this.tableData.length > 0;
153 this.tableData.forEach((item) => { 190 this.tableData.forEach((item) => {
154 item.sjlx = getSjlx(item.sjlx); 191 item.sjlx = getSjlx(item.sjlx);
155 item.ldsyqxz = getDictLeabel(item.ldsyqxz, "A45"); 192 item.ldsyqxz = getDictLeabel(item.ldsyqxz, "A45");
...@@ -167,7 +204,7 @@ export default { ...@@ -167,7 +204,7 @@ export default {
167 }, 204 },
168 /** 205 /**
169 * @description: checkChange 206 * @description: checkChange
170 * @author: renchao 207 * @author: miaofang
171 */ 208 */
172 checkChange() { 209 checkChange() {
173 if (this.checkList.length === 0) { 210 if (this.checkList.length === 0) {
...@@ -180,7 +217,7 @@ export default { ...@@ -180,7 +217,7 @@ export default {
180 /** 217 /**
181 * @description: getQsztName 218 * @description: getQsztName
182 * @param {*} code 219 * @param {*} code
183 * @author: renchao 220 * @author: miaofang
184 */ 221 */
185 getQsztName(code) { 222 getQsztName(code) {
186 let name = ""; 223 let name = "";
...@@ -197,7 +234,7 @@ export default { ...@@ -197,7 +234,7 @@ export default {
197 * @description: 新增一条补录信息 234 * @description: 新增一条补录信息
198 * @param {*} row 235 * @param {*} row
199 * @param {*} del 236 * @param {*} del
200 * @author: renchao 237 * @author: miaofang
201 */ 238 */
202 editDialog(row, del) { 239 editDialog(row, del) {
203 this.$confirm("此操作将新增一条补录信息, 是否继续?", "提示", { 240 this.$confirm("此操作将新增一条补录信息, 是否继续?", "提示", {
......
1 <!-- 1 <!--
2 * @Description: 2 * @Description:
3 * @Autor: renchao 3 * @Autor: miaofang
4 * @LastEditTime: 2023-08-23 15:54:12 4 * @LastEditTime: 2023-08-23 15:54:12
5 --> 5 -->
6 <template> 6 <template>
7 <div class="djxxTable"> 7 <div class="djxxTable">
8 <div v-show="false"> 8 <div v-show="false">
9 <printTemplate id="box" :propsParam="propsParam" :tableData="tableData"/> 9 <printTemplate
10 id="boxnydsyq"
11 :propsParam="propsParam"
12 :tableData="tableData"
13 :render="render"
14 />
10 </div> 15 </div>
11 <div class="tableBox"> 16 <div class="tableBox">
12 <div class="title"> 17 <div class="title">
13 {{ title }} 18 {{ title }}
14 <el-button class="print" v-show="shows" v-print="printObj">打印</el-button> 19 <el-button class="print" v-show="shows" @click="openPrint()"
20 >打印</el-button
21 >
15 <div class="checkbox"> 22 <div class="checkbox">
16 <el-checkbox-group v-model="checkList" @change="checkChange"> 23 <el-checkbox-group v-model="checkList" @change="checkChange">
17 <el-checkbox 24 <el-checkbox
...@@ -162,7 +169,7 @@ export default { ...@@ -162,7 +169,7 @@ export default {
162 id: "box", 169 id: "box",
163 //其他配置项, 170 //其他配置项,
164 }, 171 },
165 shows:false, 172 shows: false,
166 title: "农用地使用权登记信息", 173 title: "农用地使用权登记信息",
167 qsztList: datas.columns().qsztList, 174 qsztList: datas.columns().qsztList,
168 checkList: datas.columns().checkList, 175 checkList: datas.columns().checkList,
...@@ -174,6 +181,7 @@ export default { ...@@ -174,6 +181,7 @@ export default {
174 emptycolNum: datas.columns().emptycolNum, 181 emptycolNum: datas.columns().emptycolNum,
175 //列名称对象 182 //列名称对象
176 columns: datas.columns().NYDSYQ, 183 columns: datas.columns().NYDSYQ,
184 render: false,
177 }; 185 };
178 }, 186 },
179 created() { 187 created() {
...@@ -187,8 +195,37 @@ export default { ...@@ -187,8 +195,37 @@ export default {
187 }, 195 },
188 methods: { 196 methods: {
189 /** 197 /**
198 * @description: openPrint
199 * @author: miaofang
200 */
201 openPrint() {
202 this.render = true;
203 setTimeout(() => {
204 this.prinsss();
205 }, 100);
206 },
207 /**
208 * @description: prinsss
209 * @author: miaofang
210 */
211 prinsss() {
212 printJS({
213 printable: "boxnydsyq", // // 文档来源:pdf或图像的url,html元素的id或json数据的对象
214 type: "html",
215 maxWidth: 800, // 最大宽度
216 font_size: "", // 不设置则使用默认字体大小
217 style: `@font-face {
218 font-family: "STZHONGS";
219 src: url(${window.ttf}) format("truetype");
220 }`,
221 // 继承原来的所有样式
222 targetStyles: ["*"],
223 });
224 this.render=false
225 },
226 /**
190 * @description: loadData 227 * @description: loadData
191 * @author: renchao 228 * @author: miaofang
192 */ 229 */
193 loadData() { 230 loadData() {
194 if (this.$parent.addRepairRecord) { 231 if (this.$parent.addRepairRecord) {
...@@ -204,7 +241,7 @@ export default { ...@@ -204,7 +241,7 @@ export default {
204 }).then((res) => { 241 }).then((res) => {
205 if (res.code === 200) { 242 if (res.code === 200) {
206 this.tableData = res.result; 243 this.tableData = res.result;
207 this.shows=this.tableData.length>0 244 this.shows = this.tableData.length > 0;
208 this.tableData.forEach((item) => { 245 this.tableData.forEach((item) => {
209 item.sjlx = getSjlx(item.sjlx); 246 item.sjlx = getSjlx(item.sjlx);
210 }); 247 });
...@@ -219,7 +256,7 @@ export default { ...@@ -219,7 +256,7 @@ export default {
219 }, 256 },
220 /** 257 /**
221 * @description: checkChange 258 * @description: checkChange
222 * @author: renchao 259 * @author: miaofang
223 */ 260 */
224 checkChange() { 261 checkChange() {
225 if (this.checkList.length === 0) { 262 if (this.checkList.length === 0) {
...@@ -231,7 +268,7 @@ export default { ...@@ -231,7 +268,7 @@ export default {
231 }, 268 },
232 /** 269 /**
233 * @description: getQsztName 270 * @description: getQsztName
234 * @author: renchao 271 * @author: miaofang
235 */ 272 */
236 getQsztName(code) { 273 getQsztName(code) {
237 let name = ""; 274 let name = "";
...@@ -248,7 +285,7 @@ export default { ...@@ -248,7 +285,7 @@ export default {
248 * @description: 新增一条补录信息 285 * @description: 新增一条补录信息
249 * @param {*} row 286 * @param {*} row
250 * @param {*} del 287 * @param {*} del
251 * @author: renchao 288 * @author: miaofang
252 */ 289 */
253 editDialog(row, del) { 290 editDialog(row, del) {
254 this.$confirm("此操作将新增一条补录信息, 是否继续?", "提示", { 291 this.$confirm("此操作将新增一条补录信息, 是否继续?", "提示", {
......
...@@ -10,24 +10,33 @@ ...@@ -10,24 +10,33 @@
10 --> 10 -->
11 <!-- 11 <!--
12 * @Description: 12 * @Description:
13 * @Autor: renchao 13 * @Autor: miaofang
14 * @LastEditTime: 2023-08-11 15:33:53 14 * @LastEditTime: 2023-08-11 15:33:53
15 --> 15 -->
16 <template> 16 <template>
17 <div class="djxxTable"> 17 <div class="djxxTable">
18 <div v-show="false"> 18 <div v-show="false">
19 <printTemplate id="box" :propsParam="propsParam" :tableData="tableData"/> 19 <printTemplate
20 id="boxsllmsyq"
21 :propsParam="propsParam"
22 :tableData="tableData"
23 :render="render"
24 />
20 </div> 25 </div>
21 <div class="tableBox"> 26 <div class="tableBox">
22 <div class="title"> 27 <div class="title">
23 {{ title }} 28 {{ title }}
24 <el-button class="print" v-show="shows" v-print="printObj">打印</el-button> 29 <el-button class="print" v-show="shows" @click="openPrint()"
30 >打印</el-button
31 >
25 <div class="checkbox"> 32 <div class="checkbox">
26 <el-checkbox-group v-model="checkList" @change="checkChange"> 33 <el-checkbox-group v-model="checkList" @change="checkChange">
27 <el-checkbox 34 <el-checkbox
28 v-for="item in qsztList" 35 v-for="item in qsztList"
29 :key="item.value" 36 :key="item.value"
30 :label="item.value">{{ item.label }}</el-checkbox> 37 :label="item.value"
38 >{{ item.label }}</el-checkbox
39 >
31 </el-checkbox-group> 40 </el-checkbox-group>
32 </div> 41 </div>
33 </div> 42 </div>
...@@ -47,33 +56,60 @@ ...@@ -47,33 +56,60 @@
47 item.prop == 'qszt' && row.qlzt == '3' ? 'linshiIcon' : '', 56 item.prop == 'qszt' && row.qlzt == '3' ? 'linshiIcon' : '',
48 item.prop == 'qszt' && row.qlzt == '2' ? 'linshiIcon' : '', 57 item.prop == 'qszt' && row.qlzt == '2' ? 'linshiIcon' : '',
49 item.prop == 'qszt' && row.qlzt == '1' ? 'xianshiIcon' : '', 58 item.prop == 'qszt' && row.qlzt == '1' ? 'xianshiIcon' : '',
50 item.prop == 'qszt' && row.qlzt == '4' ? 'zhuxiaoIcon' : '' 59 item.prop == 'qszt' && row.qlzt == '4' ? 'zhuxiaoIcon' : '',
51 ]"> 60 ]"
52 <div class="setbut" v-if="item.prop == 'cz'&&row.sjlx !='系统数据'"> 61 >
53 <el-button type="text" icon="el-icon-edit-outline" @click="editDialog(row)">编辑</el-button> 62 <div
54 <el-button type="text" icon="el-icon-edit-outline" @click="editDialog(row,'D')">删除</el-button> 63 class="setbut"
64 v-if="item.prop == 'cz' && row.sjlx != '系统数据'"
65 >
66 <el-button
67 type="text"
68 icon="el-icon-edit-outline"
69 @click="editDialog(row)"
70 >编辑</el-button
71 >
72 <el-button
73 type="text"
74 icon="el-icon-edit-outline"
75 @click="editDialog(row, 'D')"
76 >删除</el-button
77 >
78 </div>
79 <div class="icon" v-if="item.prop == 'qszt' && row.qlzt == '1'">
80 有效
81 </div>
82 <div class="icon" v-if="item.prop == 'qszt' && row.qlzt == '2'">
83 正在补录
84 </div>
85 <div class="icon" v-if="item.prop == 'qszt' && row.qlzt == '3'">
86 正在申请
87 </div>
88 <div class="icon" v-if="item.prop == 'qszt' && row.qlzt == '4'">
89 正在注销
55 </div> 90 </div>
56 <div class="icon" v-if="item.prop == 'qszt' &&row.qlzt == '1'">有效</div>
57 <div class="icon" v-if="item.prop == 'qszt' && row.qlzt == '2'">正在补录</div>
58 <div class="icon" v-if="item.prop == 'qszt' && row.qlzt == '3'">正在申请</div>
59 <div class="icon" v-if="item.prop == 'qszt' && row.qlzt == '4'">正在注销</div>
60 91
61 <!-- <span v-if="item.prop == 'qszt'">{{ getQsztName(row[item.prop]) }}</span> 92 <!-- <span v-if="item.prop == 'qszt'">{{ getQsztName(row[item.prop]) }}</span>
62 <span v-else>{{ row[item.prop] }}</span> --> 93 <span v-else>{{ row[item.prop] }}</span> -->
63 94
64 <p v-if="!['djyy','fj'].includes(item.prop)"> 95 <p v-if="!['djyy', 'fj'].includes(item.prop)">
65 <span v-if="item.prop == 'qszt'"> 96 <span v-if="item.prop == 'qszt'">
66 {{ getQsztName(row[item.prop]) }} 97 {{ getQsztName(row[item.prop]) }}
67 </span> 98 </span>
68 <span v-else>{{ row[item.prop] }}</span> 99 <span v-else>{{ row[item.prop] }}</span>
69 </p> 100 </p>
70 101
71 <el-tooltip v-else effect="dark" :content="row[item.prop]" placement="top" popper-class="tooltip-width"> 102 <el-tooltip
103 v-else
104 effect="dark"
105 :content="row[item.prop]"
106 placement="top"
107 popper-class="tooltip-width"
108 >
72 <span class="ellipsis-line"> 109 <span class="ellipsis-line">
73 {{ row[item.prop] }} 110 {{ row[item.prop] }}
74 </span> 111 </span>
75 </el-tooltip> 112 </el-tooltip>
76
77 </td> 113 </td>
78 <td v-for="count in emptycolNum" :key="~count"></td> 114 <td v-for="count in emptycolNum" :key="~count"></td>
79 </tr> 115 </tr>
...@@ -84,9 +120,9 @@ ...@@ -84,9 +120,9 @@
84 </template> 120 </template>
85 121
86 <script> 122 <script>
87 import { datas } from "./qlxxFormData.js"; 123 import { datas } from "./qlxxFormData.js";
88 import { getSjlx } from "@/utils/dictionary.js"; 124 import { getSjlx } from "@/utils/dictionary.js";
89 import { getLqList } from "@/api/djbDetail.js"; 125 import { getLqList } from "@/api/djbDetail.js";
90 import printTemplate from "./components/printTemplate.vue"; 126 import printTemplate from "./components/printTemplate.vue";
91 export default { 127 export default {
92 components: { 128 components: {
...@@ -98,117 +134,147 @@ export default { ...@@ -98,117 +134,147 @@ export default {
98 id: "box", 134 id: "box",
99 //其他配置项, 135 //其他配置项,
100 }, 136 },
101 shows:false, 137 shows: false,
102 title: "林权登记信息", 138 title: "林权登记信息",
103 qsztList: datas.columns().qsztList, 139 qsztList: datas.columns().qsztList,
104 checkList: datas.columns().checkList, 140 checkList: datas.columns().checkList,
105 //传递参数 141 //传递参数
106 propsParam: this.$attrs, 142 propsParam: this.$attrs,
107 //列表数据 143 //列表数据
108 tableData: [], 144 tableData: [],
109 //空列值个数 145 //空列值个数
110 emptycolNum: datas.columns().emptycolNum, 146 emptycolNum: datas.columns().emptycolNum,
111 //列名称对象 147 //列名称对象
112 columns: datas.columns().LDSYQ, 148 columns: datas.columns().LDSYQ,
113 }; 149 render: false,
150 };
151 },
152 created() {
153 this.loadData();
154 },
155 methods: {
156 /**
157 * @description: openPrint
158 * @author: miaofang
159 */
160 openPrint() {
161 this.render = true;
162 setTimeout(() => {
163 this.prinsss();
164 }, 100);
114 }, 165 },
115 created () { 166 /**
116 this.loadData(); 167 * @description: prinsss
168 * @author: miaofang
169 */
170 prinsss() {
171 printJS({
172 printable: "boxsllmsyq", // // 文档来源:pdf或图像的url,html元素的id或json数据的对象
173 type: "html",
174 maxWidth: 800, // 最大宽度
175 font_size: "", // 不设置则使用默认字体大小
176 style: `@font-face {
177 font-family: "STZHONGS";
178 src: url(${window.ttf}) format("truetype");
179 }`,
180 // 继承原来的所有样式
181 targetStyles: ["*"],
182 });
183 this.render=false
117 }, 184 },
118 methods: { 185 /**
119 /** 186 * @description: loadData
120 * @description: loadData 187 * @author: miaofang
121 * @author: renchao 188 */
122 */ 189 loadData() {
123 loadData () { 190 if (this.$parent.addRepairRecord) {
124 if (this.$parent.addRepairRecord) { 191 this.columns.unshift({
125 this.columns.unshift({ 192 prop: "cz",
126 prop: "cz", 193 label: "操作",
127 label: "操作", 194 });
195 }
196 getLqList({
197 bdcdyid: this.propsParam.bdcdyid,
198 qllx: this.propsParam.qllx,
199 qszt: this.checkList,
200 }).then((res) => {
201 if (res.code === 200) {
202 this.tableData = res.result;
203 this.shows = this.tableData.length > 0;
204 this.tableData.forEach((item) => {
205 item.sjlx = getSjlx(item.sjlx);
128 }); 206 });
129 } 207 if (this.tableData.length < datas.columns().emptycolNum) {
130 getLqList({ 208 this.emptycolNum =
131 bdcdyid: this.propsParam.bdcdyid, 209 datas.columns().emptycolNum - this.tableData.length;
132 qllx: this.propsParam.qllx, 210 } else {
133 qszt: this.checkList, 211 this.emptycolNum = 0;
134 }).then((res) => {
135 if (res.code === 200) {
136 this.tableData = res.result;
137 this.shows=this.tableData.length>0
138 this.tableData.forEach((item) => {
139 item.sjlx = getSjlx(item.sjlx);
140 });
141 if (this.tableData.length < datas.columns().emptycolNum) {
142 this.emptycolNum =
143 datas.columns().emptycolNum - this.tableData.length;
144 } else {
145 this.emptycolNum = 0;
146 }
147 } 212 }
148 });
149 },
150 /**
151 * @description: checkChange
152 * @author: renchao
153 */
154 checkChange () {
155 if (this.checkList.length === 0) {
156 this.tableData = [];
157 this.emptycolNum = datas.columns().emptycolNum;
158 } else {
159 this.loadData();
160 } 213 }
161 }, 214 });
162 /** 215 },
163 * @description: getQsztName 216 /**
164 * @param {*} code 217 * @description: checkChange
165 * @author: renchao 218 * @author: miaofang
166 */ 219 */
167 getQsztName (code) { 220 checkChange() {
168 let name = ""; 221 if (this.checkList.length === 0) {
169 for (let item of this.qsztList) { 222 this.tableData = [];
170 if (item.value == code) { 223 this.emptycolNum = datas.columns().emptycolNum;
171 name = item.label; 224 } else {
172 break; 225 this.loadData();
173 } 226 }
227 },
228 /**
229 * @description: getQsztName
230 * @param {*} code
231 * @author: miaofang
232 */
233 getQsztName(code) {
234 let name = "";
235 for (let item of this.qsztList) {
236 if (item.value == code) {
237 name = item.label;
238 break;
174 } 239 }
175 return name; 240 }
176 }, 241 return name;
177 // 新增一条补录信息 242 },
178 /** 243 // 新增一条补录信息
179 * @description: 新增一条补录信息 244 /**
180 * @param {*} row 245 * @description: 新增一条补录信息
181 * @param {*} del 246 * @param {*} row
182 * @author: renchao 247 * @param {*} del
183 */ 248 * @author: miaofang
184 editDialog (row, del) { 249 */
185 this.$confirm("此操作将新增一条补录信息, 是否继续?", "提示", { 250 editDialog(row, del) {
186 confirmButtonText: "确定", 251 this.$confirm("此操作将新增一条补录信息, 是否继续?", "提示", {
187 cancelButtonText: "取消", 252 confirmButtonText: "确定",
188 type: "warning", 253 cancelButtonText: "取消",
189 }) 254 type: "warning",
190 .then(() => { 255 })
191 this.$parent.addRepairRecord(row, del); 256 .then(() => {
257 this.$parent.addRepairRecord(row, del);
192 258
193 this.$message({ 259 this.$message({
194 type: "success", 260 type: "success",
195 message: "补录成功!", 261 message: "补录成功!",
196 });
197 })
198 .catch(() => {
199 this.$message({
200 type: "info",
201 message: "取消编辑",
202 });
203 }); 262 });
204 }, 263 })
264 .catch(() => {
265 this.$message({
266 type: "info",
267 message: "取消编辑",
268 });
269 });
205 }, 270 },
206 }; 271 },
272 };
207 </script> 273 </script>
208 274
209 <style lang="scss" scoped> 275 <style lang="scss" scoped>
210 @import "./qlxxCommon.scss"; 276 @import "./qlxxCommon.scss";
211 .title { 277 .title {
212 position: relative; 278 position: relative;
213 .print { 279 .print {
214 // background-color: #0079fe; 280 // background-color: #0079fe;
......
1 <!-- 1 <!--
2 * @Description: 2 * @Description:
3 * @Autor: renchao 3 * @Autor: miaofang
4 * @LastEditTime: 2023-08-23 15:54:12 4 * @LastEditTime: 2023-08-23 15:54:12
5 --> 5 -->
6 <template> 6 <template>
7 <div class="djxxTable"> 7 <div class="djxxTable">
8 <div v-show="false"> 8 <div v-show="false">
9 <printTemplate id="box" :propsParam="propsParam" :tableData="tableData"/> 9 <printTemplate id="boxtdsyq" :propsParam="propsParam" :tableData="tableData" :render="render"/>
10 </div> 10 </div>
11 <div class="tableBox"> 11 <div class="tableBox">
12 <div class="title"> 12 <div class="title">
13 {{ title }} 13 {{ title }}
14 <el-button class="print" v-show="shows" v-print="printObj">打印</el-button> 14 <el-button class="print" v-show="shows" @click="openPrint()">打印</el-button>
15 <div class="checkbox"> 15 <div class="checkbox">
16 <el-checkbox-group v-model="checkList" @change="checkChange"> 16 <el-checkbox-group v-model="checkList" @change="checkChange">
17 <el-checkbox v-for="item in qsztList" :key="item.value" :label="item.value">{{ item.label }}</el-checkbox> 17 <el-checkbox v-for="item in qsztList" :key="item.value" :label="item.value">{{ item.label }}</el-checkbox>
...@@ -100,15 +100,37 @@ export default { ...@@ -100,15 +100,37 @@ export default {
100 emptycolNum: datas.columns().emptycolNum, 100 emptycolNum: datas.columns().emptycolNum,
101 //列名称对象 101 //列名称对象
102 columns: datas.columns().TDSYQ, 102 columns: datas.columns().TDSYQ,
103 render:false
103 }; 104 };
104 }, 105 },
105 created () { 106 created () {
106 this.loadData(); 107 this.loadData();
107 }, 108 },
108 methods: { 109 methods: {
110 openPrint(){
111 this.render=true
112 setTimeout(() => {
113 this.prinsss()
114 }, 100)
115 },
116 prinsss(){
117 printJS({
118 printable: "boxtdsyq", // // 文档来源:pdf或图像的url,html元素的id或json数据的对象
119 type: "html",
120 maxWidth: 800, // 最大宽度
121 font_size: "", // 不设置则使用默认字体大小
122 style: `@font-face {
123 font-family: "STZHONGS";
124 src: url(${window.ttf}) format("truetype");
125 }`,
126 // 继承原来的所有样式
127 targetStyles: ["*"]
128 });
129 this.render=false
130 },
109 /** 131 /**
110 * @description: loadData 132 * @description: loadData
111 * @author: renchao 133 * @author: miaofang
112 */ 134 */
113 loadData () { 135 loadData () {
114 136
...@@ -140,7 +162,7 @@ export default { ...@@ -140,7 +162,7 @@ export default {
140 }, 162 },
141 /** 163 /**
142 * @description: checkChange 164 * @description: checkChange
143 * @author: renchao 165 * @author: miaofang
144 */ 166 */
145 checkChange () { 167 checkChange () {
146 if (this.checkList.length === 0) { 168 if (this.checkList.length === 0) {
...@@ -153,7 +175,7 @@ export default { ...@@ -153,7 +175,7 @@ export default {
153 /** 175 /**
154 * @description: getQsztName 176 * @description: getQsztName
155 * @param {*} code 177 * @param {*} code
156 * @author: renchao 178 * @author: miaofang
157 */ 179 */
158 getQsztName (code) { 180 getQsztName (code) {
159 let name = ""; 181 let name = "";
...@@ -170,7 +192,7 @@ export default { ...@@ -170,7 +192,7 @@ export default {
170 * @description: 新增一条补录信息 192 * @description: 新增一条补录信息
171 * @param {*} row 193 * @param {*} row
172 * @param {*} del 194 * @param {*} del
173 * @author: renchao 195 * @author: miaofang
174 */ 196 */
175 editDialog (row, del) { 197 editDialog (row, del) {
176 this.$confirm('此操作将新增一条补录信息, 是否继续?', '提示', { 198 this.$confirm('此操作将新增一条补录信息, 是否继续?', '提示', {
......
1 <!-- 1 <!--
2 * @Description: 2 * @Description:
3 * @Autor: renchao 3 * @Autor: miaofang
4 * @LastEditTime: 2023-08-23 15:54:12 4 * @LastEditTime: 2023-08-23 15:54:12
5 --> 5 -->
6 <template> 6 <template>
7 <div class="djxxTable"> 7 <div class="djxxTable">
8 <div v-show="false"> 8 <div v-show="false">
9 <printTemplate id="box" :propsParam="propsParam" :tableData="tableData"/> 9 <printTemplate id="boxygdj" :propsParam="propsParam" :tableData="tableData" :render="render"/>
10 </div> 10 </div>
11 <div class="tableBox"> 11 <div class="tableBox">
12 <div class="title"> 12 <div class="title">
13 {{ title }} 13 {{ title }}
14 <el-button class="print" v-show="shows" v-print="printObj">打印</el-button> 14 <el-button class="print" v-show="shows" @click="openPrint()">打印</el-button>
15 <div class="checkbox"> 15 <div class="checkbox">
16 <el-checkbox-group v-model="checkList" @change="checkChange"> 16 <el-checkbox-group v-model="checkList" @change="checkChange">
17 <el-checkbox 17 <el-checkbox
...@@ -108,10 +108,10 @@ export default { ...@@ -108,10 +108,10 @@ export default {
108 }, 108 },
109 data() { 109 data() {
110 return { 110 return {
111 printObj: { 111 // printObj: {
112 id: "box", 112 // id: "box",
113 //其他配置项, 113 // //其他配置项,
114 }, 114 // },
115 shows:false, 115 shows:false,
116 title: "预告登记信息", 116 title: "预告登记信息",
117 qsztList: datas.columns().qsztList, 117 qsztList: datas.columns().qsztList,
...@@ -124,15 +124,37 @@ export default { ...@@ -124,15 +124,37 @@ export default {
124 emptycolNum: datas.columns().emptycolNum, 124 emptycolNum: datas.columns().emptycolNum,
125 //列名称对象 125 //列名称对象
126 columns: datas.columns().YGDJ, 126 columns: datas.columns().YGDJ,
127 render:false
127 }; 128 };
128 }, 129 },
129 created() { 130 created() {
130 this.loadData(); 131 this.loadData();
131 }, 132 },
132 methods: { 133 methods: {
134 openPrint(){
135 this.render=true
136 setTimeout(() => {
137 this.prinsss()
138 }, 100)
139 },
140 prinsss(){
141 printJS({
142 printable: "boxygdj", // // 文档来源:pdf或图像的url,html元素的id或json数据的对象
143 type: "html",
144 maxWidth: 800, // 最大宽度
145 font_size: "", // 不设置则使用默认字体大小
146 style: `@font-face {
147 font-family: "STZHONGS";
148 src: url(${window.ttf}) format("truetype");
149 }`,
150 // 继承原来的所有样式
151 targetStyles: ["*"]
152 });
153 this.render=false
154 },
133 /** 155 /**
134 * @description: loadData 156 * @description: loadData
135 * @author: renchao 157 * @author: miaofang
136 */ 158 */
137 loadData() { 159 loadData() {
138 // 判断是否在登记簿补录调的子页面 160 // 判断是否在登记簿补录调的子页面
...@@ -165,7 +187,7 @@ export default { ...@@ -165,7 +187,7 @@ export default {
165 }, 187 },
166 /** 188 /**
167 * @description: checkChange 189 * @description: checkChange
168 * @author: renchao 190 * @author: miaofang
169 */ 191 */
170 checkChange() { 192 checkChange() {
171 if (this.checkList.length === 0) { 193 if (this.checkList.length === 0) {
...@@ -178,7 +200,7 @@ export default { ...@@ -178,7 +200,7 @@ export default {
178 /** 200 /**
179 * @description: getQsztName 201 * @description: getQsztName
180 * @param {*} code 202 * @param {*} code
181 * @author: renchao 203 * @author: miaofang
182 */ 204 */
183 getQsztName(code) { 205 getQsztName(code) {
184 let name = ""; 206 let name = "";
...@@ -195,7 +217,7 @@ export default { ...@@ -195,7 +217,7 @@ export default {
195 * @description: 新增一条补录信息 217 * @description: 新增一条补录信息
196 * @param {*} row 218 * @param {*} row
197 * @param {*} del 219 * @param {*} del
198 * @author: renchao 220 * @author: miaofang
199 */ 221 */
200 editDialog(row, del) { 222 editDialog(row, del) {
201 this.$confirm("此操作将新增一条补录信息, 是否继续?", "提示", { 223 this.$confirm("此操作将新增一条补录信息, 是否继续?", "提示", {
......
1 <!-- 1 <!--
2 * @Description: 2 * @Description:
3 * @Autor: renchao 3 * @Autor: miaofang
4 * @LastEditTime: 2023-08-23 15:54:12 4 * @LastEditTime: 2023-08-23 15:54:12
5 --> 5 -->
6 <template> 6 <template>
7 <div class="djxxTable"> 7 <div class="djxxTable">
8 <div v-show="false"> 8 <div v-show="false">
9 <printTemplate id="box" :propsParam="propsParam" :tableData="tableData"/> 9 <printTemplate
10 id="boxyydj"
11 :propsParam="propsParam"
12 :tableData="tableData"
13 :render="render"
14 />
10 </div> 15 </div>
11 <div class="tableBox"> 16 <div class="tableBox">
12 <div class="title"> 17 <div class="title">
13 {{ title }} 18 {{ title }}
14 <el-button class="print" v-show="shows" v-print="printObj">打印</el-button> 19 <el-button class="print" v-show="shows" @click="openPrint()"
20 >打印</el-button
21 >
15 <div class="checkbox"> 22 <div class="checkbox">
16 <el-checkbox-group v-model="checkList" @change="checkChange"> 23 <el-checkbox-group v-model="checkList" @change="checkChange">
17 <el-checkbox v-for="item in qsztList" :key="item.value" :label="item.value">{{ item.label }}</el-checkbox> 24 <el-checkbox
25 v-for="item in qsztList"
26 :key="item.value"
27 :label="item.value"
28 >{{ item.label }}</el-checkbox
29 >
18 </el-checkbox-group> 30 </el-checkbox-group>
19 </div> 31 </div>
20 </div> 32 </div>
...@@ -24,21 +36,35 @@ ...@@ -24,21 +36,35 @@
24 <td> 36 <td>
25 {{ item.label }} 37 {{ item.label }}
26 </td> 38 </td>
27 <td v-for="(row, index) in tableData" :key="index" :class="[ 39 <td
28 row.qszt == '2' ? 'lishi' : '', 40 v-for="(row, index) in tableData"
29 row.qszt == '0' ? 'linshi' : '', 41 :key="index"
30 row.qlzt == '4' ? 'linshi' : '', 42 :class="[
43 row.qszt == '2' ? 'lishi' : '',
44 row.qszt == '0' ? 'linshi' : '',
45 row.qlzt == '4' ? 'linshi' : '',
31 46
32 item.prop == 'qszt' && row.qlzt == '3' ? 'linshiIcon' : '', 47 item.prop == 'qszt' && row.qlzt == '3' ? 'linshiIcon' : '',
33 item.prop == 'qszt' && row.qlzt == '2' ? 'linshiIcon' : '', 48 item.prop == 'qszt' && row.qlzt == '2' ? 'linshiIcon' : '',
34 item.prop == 'qszt' && row.qlzt == '1' ? 'xianshiIcon' : '', 49 item.prop == 'qszt' && row.qlzt == '1' ? 'xianshiIcon' : '',
35 item.prop == 'qszt' && row.qlzt == '4' ? 'zhuxiaoIcon' : '' 50 item.prop == 'qszt' && row.qlzt == '4' ? 'zhuxiaoIcon' : '',
36 ]"> 51 ]"
52 >
37 <div class="setbut" v-if="item.prop == 'cz'"> 53 <div class="setbut" v-if="item.prop == 'cz'">
38 <el-button type="text" icon="el-icon-edit-outline" @click="editDialog(row)">编辑</el-button> 54 <el-button
39 <el-button type="text" icon="el-icon-edit-outline" @click="editDialog(row,'D')">删除</el-button> 55 type="text"
56 icon="el-icon-edit-outline"
57 @click="editDialog(row)"
58 >编辑</el-button
59 >
60 <el-button
61 type="text"
62 icon="el-icon-edit-outline"
63 @click="editDialog(row, 'D')"
64 >删除</el-button
65 >
40 </div> 66 </div>
41 <div class="icon" v-if="item.prop == 'qszt' &&row.qlzt == '1'"> 67 <div class="icon" v-if="item.prop == 'qszt' && row.qlzt == '1'">
42 有效 68 有效
43 </div> 69 </div>
44 <div class="icon" v-if="item.prop == 'qszt' && row.qlzt == '2'"> 70 <div class="icon" v-if="item.prop == 'qszt' && row.qlzt == '2'">
...@@ -51,14 +77,20 @@ ...@@ -51,14 +77,20 @@
51 正在注销 77 正在注销
52 </div> 78 </div>
53 79
54 <p v-if="!['djyy','fj'].includes(item.prop)"> 80 <p v-if="!['djyy', 'fj'].includes(item.prop)">
55 <span v-if="item.prop == 'qszt'"> 81 <span v-if="item.prop == 'qszt'">
56 {{ getQsztName(row[item.prop]) }} 82 {{ getQsztName(row[item.prop]) }}
57 </span> 83 </span>
58 <span v-else>{{ row[item.prop] }}</span> 84 <span v-else>{{ row[item.prop] }}</span>
59 </p> 85 </p>
60 86
61 <el-tooltip v-else effect="dark" :content="row[item.prop]" placement="top" popper-class="tooltip-width"> 87 <el-tooltip
88 v-else
89 effect="dark"
90 :content="row[item.prop]"
91 placement="top"
92 popper-class="tooltip-width"
93 >
62 <span class="ellipsis-line"> 94 <span class="ellipsis-line">
63 {{ row[item.prop] }} 95 {{ row[item.prop] }}
64 </span> 96 </span>
...@@ -73,9 +105,9 @@ ...@@ -73,9 +105,9 @@
73 </template> 105 </template>
74 106
75 <script> 107 <script>
76 import { datas } from "./qlxxFormData.js"; 108 import { datas } from "./qlxxFormData.js";
77 import { getYydjList } from "@/api/djbDetail.js"; 109 import { getYydjList } from "@/api/djbDetail.js";
78 import { getSjlx, getDictLeabel } from "@/utils/dictionary.js"; 110 import { getSjlx, getDictLeabel } from "@/utils/dictionary.js";
79 import printTemplate from "./components/printTemplate.vue"; 111 import printTemplate from "./components/printTemplate.vue";
80 export default { 112 export default {
81 components: { 113 components: {
...@@ -87,117 +119,140 @@ export default { ...@@ -87,117 +119,140 @@ export default {
87 id: "box", 119 id: "box",
88 //其他配置项, 120 //其他配置项,
89 }, 121 },
90 shows:false, 122 shows: false,
91 title: "异议登记信息", 123 title: "异议登记信息",
92 qsztList: datas.columns().qsztList, 124 qsztList: datas.columns().qsztList,
93 checkList: datas.columns().checkList, 125 checkList: datas.columns().checkList,
94 //传递参数 126 //传递参数
95 propsParam: this.$attrs, 127 propsParam: this.$attrs,
96 //列表数据 128 //列表数据
97 tableData: [], 129 tableData: [],
98 //空列值个数 130 //空列值个数
99 emptycolNum: datas.columns().emptycolNum, 131 emptycolNum: datas.columns().emptycolNum,
100 //列名称对象 132 //列名称对象
101 columns: datas.columns().YYDJ, 133 columns: datas.columns().YYDJ,
102 }; 134 render: false,
135 };
136 },
137 created() {
138 this.loadData();
139 },
140 methods: {
141 openPrint() {
142 this.render = true;
143 setTimeout(() => {
144 this.prinsss();
145 }, 100);
103 }, 146 },
104 created () { 147 prinsss() {
105 this.loadData(); 148 printJS({
149 printable: "boxyydj", // // 文档来源:pdf或图像的url,html元素的id或json数据的对象
150 type: "html",
151 maxWidth: 800, // 最大宽度
152 font_size: "", // 不设置则使用默认字体大小
153 style: `@font-face {
154 font-family: "STZHONGS";
155 src: url(${window.ttf}) format("truetype");
156 }`,
157 // 继承原来的所有样式
158 targetStyles: ["*"],
159 });
160 this.render=false
106 }, 161 },
107 methods: { 162 /**
108 /** 163 * @description: loadData
109 * @description: loadData 164 * @author: miaofang
110 * @author: renchao 165 */
111 */ 166 loadData() {
112 loadData () { 167 if (this.$parent.addRepairRecord) {
113 if (this.$parent.addRepairRecord) { 168 this.columns.unshift({
114 this.columns.unshift({ 169 prop: "cz",
115 prop: "cz", 170 label: "操作",
116 label: "操作"
117 })
118 }
119 getYydjList({
120 bdcdyid: this.propsParam.bdcdyid,
121 qllx: this.propsParam.qllx,
122 qszt: this.checkList,
123 }).then((res) => {
124 if (res.code === 200) {
125 this.tableData = res.result;
126 this.shows=this.tableData.length>0
127 this.tableData.forEach((item) => {
128 item.sjlx = getSjlx(item.sjlx);
129 item.dybdclx = getDictLeabel(item.dybdclx, 'A27')
130 });
131 if (this.tableData.length < datas.columns().emptycolNum) {
132 this.emptycolNum =
133 datas.columns().emptycolNum - this.tableData.length;
134 } else {
135 this.emptycolNum = 0;
136 }
137 }
138 }); 171 });
139 }, 172 }
140 /** 173 getYydjList({
141 * @description: checkChange 174 bdcdyid: this.propsParam.bdcdyid,
142 * @author: renchao 175 qllx: this.propsParam.qllx,
143 */ 176 qszt: this.checkList,
144 checkChange () { 177 }).then((res) => {
145 if (this.checkList.length === 0) { 178 if (res.code === 200) {
146 this.tableData = []; 179 this.tableData = res.result;
147 this.emptycolNum = datas.columns().emptycolNum; 180 this.shows = this.tableData.length > 0;
148 } else { 181 this.tableData.forEach((item) => {
149 this.loadData(); 182 item.sjlx = getSjlx(item.sjlx);
150 } 183 item.dybdclx = getDictLeabel(item.dybdclx, "A27");
151 }, 184 });
152 /** 185 if (this.tableData.length < datas.columns().emptycolNum) {
153 * @description: getQsztName 186 this.emptycolNum =
154 * @param {*} code 187 datas.columns().emptycolNum - this.tableData.length;
155 * @author: renchao 188 } else {
156 */ 189 this.emptycolNum = 0;
157 getQsztName (code) {
158 let name = "";
159 for (let item of this.qsztList) {
160 if (item.value == code) {
161 name = item.label;
162 break;
163 } 190 }
164 } 191 }
165 return name; 192 });
166 }, 193 },
167 // 新增一条补录信息 194 /**
168 /** 195 * @description: checkChange
169 * @description: 新增一条补录信息 196 * @author: miaofang
170 * @param {*} row 197 */
171 * @param {*} del 198 checkChange() {
172 * @author: renchao 199 if (this.checkList.length === 0) {
173 */ 200 this.tableData = [];
174 editDialog (row, del) { 201 this.emptycolNum = datas.columns().emptycolNum;
175 this.$confirm('此操作将新增一条补录信息, 是否继续?', '提示', { 202 } else {
176 confirmButtonText: '确定', 203 this.loadData();
177 cancelButtonText: '取消', 204 }
178 type: 'warning' 205 },
179 }).then(() => { 206 /**
180 this.$parent.addRepairRecord(row, del) 207 * @description: getQsztName
208 * @param {*} code
209 * @author: miaofang
210 */
211 getQsztName(code) {
212 let name = "";
213 for (let item of this.qsztList) {
214 if (item.value == code) {
215 name = item.label;
216 break;
217 }
218 }
219 return name;
220 },
221 // 新增一条补录信息
222 /**
223 * @description: 新增一条补录信息
224 * @param {*} row
225 * @param {*} del
226 * @author: miaofang
227 */
228 editDialog(row, del) {
229 this.$confirm("此操作将新增一条补录信息, 是否继续?", "提示", {
230 confirmButtonText: "确定",
231 cancelButtonText: "取消",
232 type: "warning",
233 })
234 .then(() => {
235 this.$parent.addRepairRecord(row, del);
181 236
182 this.$message({ 237 this.$message({
183 type: 'success', 238 type: "success",
184 message: '补录成功!' 239 message: "补录成功!",
185 }); 240 });
186 }).catch(() => { 241 })
242 .catch(() => {
187 this.$message({ 243 this.$message({
188 type: 'info', 244 type: "info",
189 message: '取消编辑' 245 message: "取消编辑",
190 }); 246 });
191 }); 247 });
192
193 },
194 }, 248 },
195 }; 249 },
250 };
196 </script> 251 </script>
197 252
198 <style lang="scss" scoped> 253 <style lang="scss" scoped>
199 @import "./qlxxCommon.scss"; 254 @import "./qlxxCommon.scss";
200 .title { 255 .title {
201 position: relative; 256 position: relative;
202 .print { 257 .print {
203 // background-color: #0079fe; 258 // background-color: #0079fe;
......
1 <!--
2 * @Description:
3 * @Autor: miaofang
4 * @LastEditTime: 2023-07-19 09:52:42
5 -->
6 <template>
7 <div class="fm" id="boxaaa">
8 <div class="title">不动产登记簿</div>
9 <div class="title">(回执)</div>
10 <p class="bian">
11 编号: <span>{{ Receiptdata.sldyList[0].ybdcqzsh||"" }}</span>
12 </p>
13 <div class="texts">
14 <p class="jsjg">{{ Receiptdata.cfdjList[0].cfjg }}:</p>
15 <p class="concent">
16 <span>{{ sj }}</span> ,你院协助执行通知书订单号为:<font>{{
17 Receiptdata.qlxxList[0].ywh||""
18 }}</font
19 >收悉,具体执行情况如下。
20 </p>
21 </div>
22
23 <p class="bian">{{ Receiptdata.user.organizationName }}</p>
24 <p class="bian">{{ sj }}(盖章)</p>
25 <table class="xxTable">
26 <tr>
27 <td>序号</td>
28 <td>坐落</td>
29 <td>控制反馈</td>
30 <td>控制措施</td>
31 </tr>
32 <tr v-for="(item, index) in Receiptdata.sldyList" :key="index">
33 <td>{{ index + 1 }}</td>
34 <td>{{ item.zl }}</td>
35 <td>已控</td>
36 <td>{{ item.djlxmc }}</td>
37 </tr>
38 </table>
39 </div>
40 </template>
41
42 <script>
43 export default {
44 props: {
45 Receiptdata: {
46 type: Object,
47 default: {},
48 },
49 },
50 data() {
51 return {
52 sj: "",
53 data:false
54 };
55 },
56 mounted() {
57 this.loadData();
58 },
59 watch: {
60 Receiptdata: {
61 handler(newValue, oldValue) {
62 this.$nextTick(() => {
63 this.Receiptdata = newValue;
64 this.loadData();
65 });
66 },
67 },
68 },
69 methods: {
70 /**
71 * @description: loadData
72 * @author: miaofang
73 */
74 loadData() {
75 let dateTime = new Date(this.Receiptdata.slsq.slsj);
76 let y = dateTime.getFullYear();
77 let m = dateTime.getMonth() + 1;
78 m = m < 10 ? "0" + m : m;
79 let d = dateTime.getDate();
80 d = d < 10 ? "0" + d : d;
81 let h = dateTime.getHours();
82 h = h < 10 ? "0" + h : h;
83 let M = dateTime.getMinutes();
84 M = M < 10 ? "0" + M : M;
85 let s = dateTime.getSeconds();
86 s = s < 10 ? "0" + s : s;
87 this.sj = y + "年" + m + "月" + d + "日";
88 },
89 },
90 };
91 </script>
92
93 <style lang="scss" scoped>
94 #boxaaa{
95 font {
96 border-bottom: 1px solid #000;
97 display: inline-block;
98 padding: 0 15px;
99 line-height: 16px;
100 }
101
102 .title {
103 height: 60px;
104 display: flex;
105 font-size: 32px;
106 color: #000;
107 justify-content: center;
108 align-items: center;
109 }
110 .bian {
111 text-align: right;
112 }
113 .texts{
114 margin-top: 40px;
115 margin-bottom: 40px;
116
117 }
118 .jsjg {
119 text-align: left;
120 }
121 .concent {
122 width: 100%;
123
124 line-height: 40px;
125 text-align: left;
126 text-indent: 2em;
127 }
128 p {
129 font-family: serif;
130 }
131 .xxTable {
132
133 width: 100%;
134 border-collapse: collapse;
135 font-family: serif;
136 margin-top: 20px;
137
138 tr td {
139 border: 1px solid #000;
140 text-align: center;
141 height: 40px;
142 line-height: 17px;
143 font-size: 13px;
144 min-width: 80px;
145 z-index: 1;
146 min-width: 80px;
147 padding: 5px;
148 }
149 }
150 }
151 .fm {
152 background: #fff;
153 font-size: 18px;
154 margin: auto;
155 }
156
157 </style>
...@@ -17,8 +17,10 @@ import { ...@@ -17,8 +17,10 @@ import {
17 unClaimTask, 17 unClaimTask,
18 getZdInfo 18 getZdInfo
19 } from "@/api/workFlow.js"; 19 } from "@/api/workFlow.js";
20
20 import { getZrzbsmList } from "@/api/search.js"; 21 import { getZrzbsmList } from "@/api/search.js";
21 import { ywPopupDialog } from "@/utils/popup.js"; 22 import { ywPopupDialog } from "@/utils/popup.js";
23
22 export default { 24 export default {
23 data () { 25 data () {
24 return { 26 return {
...@@ -73,7 +75,7 @@ export default { ...@@ -73,7 +75,7 @@ export default {
73 * @author: renchao 75 * @author: renchao
74 */ 76 */
75 operation (item) { 77 operation (item) {
76 //按钮 B0:选择不动产单元 B1:流程图 B2:材料分屏 B3:材料导入 B4:登记簿 B5:证书预览 B6:打印申请书 B7:证书领取 B8:楼盘表 B9:登簿 78 //按钮 B0:选择不动产单元 B1:流程图 B2:材料分屏 B3:材料导入 B4:登记簿 B5:证书预览 B6:打印申请书 B7:证书领取 B8:楼盘表 B9:登簿,B10:打印回执
77 //操作按钮 登簿:record 转件:transfer 退回:back 退出:signout 79 //操作按钮 登簿:record 转件:transfer 退回:back 退出:signout
78 let that = this; 80 let that = this;
79 switch (item.value) { 81 switch (item.value) {
...@@ -237,6 +239,8 @@ export default { ...@@ -237,6 +239,8 @@ export default {
237 }) 239 })
238 }) 240 })
239 break; 241 break;
242 case "B10":
243 break;
240 case "rm": 244 case "rm":
241 this.del() 245 this.del()
242 break; 246 break;
......
...@@ -210,7 +210,15 @@ ...@@ -210,7 +210,15 @@
210 box-sizing: border-box; 210 box-sizing: border-box;
211 width: 70px; 211 width: 70px;
212 margin: 0 5px; 212 margin: 0 5px;
213 213 div{
214 @include flex-center;
215 cursor: pointer;
216 flex-direction: column;
217 margin-right: 15px;
218 box-sizing: border-box;
219 width: 70px;
220 margin: 0 5px;
221 }
214 .icon { 222 .icon {
215 font-size: 10px; 223 font-size: 10px;
216 } 224 }
...@@ -231,4 +239,4 @@ ...@@ -231,4 +239,4 @@
231 position: absolute; 239 position: absolute;
232 left: 0; 240 left: 0;
233 bottom: 0; 241 bottom: 0;
234 }
...\ No newline at end of file ...\ No newline at end of file
242 }
......
...@@ -9,24 +9,41 @@ ...@@ -9,24 +9,41 @@
9 <div class="topButton"> 9 <div class="topButton">
10 <!-- 左侧业务功能按钮 --> 10 <!-- 左侧业务功能按钮 -->
11 <ul> 11 <ul>
12 <li @click="operation(item)" v-for="(item, index) in leftButtonList" :key="index"> 12 <li v-for="(item, index) in leftButtonList" :key="index">
13 <svg-icon class="icon" :icon-class="item.icon" /> 13 <div v-if="item.value == 'B10'" @click="openPrint()">
14 <span class="iconName">{{ item.name }}</span> 14 <svg-icon class="icon" :icon-class="item.icon" />
15 <span class="iconName">{{ item.name }}</span>
16 </div>
17 <div v-else @click="operation(item)">
18 <svg-icon class="icon" :icon-class="item.icon" />
19 <span class="iconName">{{ item.name }}</span>
20 </div>
15 </li> 21 </li>
16 </ul> 22 </ul>
17 <!-- 右侧流程按钮 --> 23 <!-- 右侧流程按钮 -->
18 <ul> 24 <ul>
19 <li @click="operation(item)" v-for="(item, index) in rightButtonList" :key="index"> 25 <li
26 @click="operation(item)"
27 v-for="(item, index) in rightButtonList"
28 :key="index"
29 >
20 <svg-icon class="icon" :icon-class="item.icon" /> 30 <svg-icon class="icon" :icon-class="item.icon" />
21 <span class="iconName">{{ item.name }}</span> 31 <span class="iconName">{{ item.name }}</span>
22 </li> 32 </li>
23 </ul> 33 </ul>
24 <NoticeBar class="NoticeBar" :noticeList="noticeList" v-if="noticeList.length > 0" /> 34 <NoticeBar
35 class="NoticeBar"
36 :noticeList="noticeList"
37 v-if="noticeList.length > 0"
38 />
25 </div> 39 </div>
26 <!-- 内容框架 --> 40 <!-- 内容框架 -->
27 <div class="containerFrame"> 41 <div class="containerFrame">
28 <!-- 左侧菜单栏 区分业务--> 42 <!-- 左侧菜单栏 区分业务-->
29 <segmentMenu v-if="['A0320099','A0330099' ].includes(slsq.djqxbm)" @getCurrentSelectProps="getCurrentSelectProps" /> 43 <segmentMenu
44 v-if="['A0320099', 'A0330099'].includes(slsq.djqxbm)"
45 @getCurrentSelectProps="getCurrentSelectProps"
46 />
30 <ordinaryMenu v-else @getCurrentSelectProps="getCurrentSelectProps" /> 47 <ordinaryMenu v-else @getCurrentSelectProps="getCurrentSelectProps" />
31 <div class="leftCon"> 48 <div class="leftCon">
32 <!-- 分屏左侧预览 --> 49 <!-- 分屏左侧预览 -->
...@@ -39,202 +56,304 @@ ...@@ -39,202 +56,304 @@
39 当前流程所在环节: 56 当前流程所在环节:
40 <span>{{ this.zbhj }}</span> 57 <span>{{ this.zbhj }}</span>
41 </div> 58 </div>
42 <el-tabs v-model="tabName" :before-leave="beforeLeave" @tab-click="handleClick"> 59 <el-tabs
43 <el-tab-pane :label="item.name" :name="item.value" v-for="item in tabList" :key="item.value"> 60 v-model="tabName"
61 :before-leave="beforeLeave"
62 @tab-click="handleClick"
63 >
64 <el-tab-pane
65 :label="item.name"
66 :name="item.value"
67 v-for="item in tabList"
68 :key="item.value"
69 >
44 </el-tab-pane> 70 </el-tab-pane>
45 </el-tabs> 71 </el-tabs>
46 <component :key="fresh" :is="componentTag" v-bind="currentSelectProps" /> 72 <div v-show="false">
73 <div v-if="shows">
74 <receipt :Receiptdata="Receiptdata" id="boxaaa"/>
75 </div>
76
77 </div>
78 <component
79 :key="fresh"
80 :is="componentTag"
81 v-bind="currentSelectProps"
82 />
47 </div> 83 </div>
48 </div> 84 </div>
49 </div> 85 </div>
50 <!-- 打印模板需要此模块 --> 86 <!-- 打印模板需要此模块 -->
51 <object id="LODOP_OB" classid="clsid:2105C259-1E0C-4534-8141-A753534CB4CA" v-show="false"> 87 <object
52 <embed id="LODOP_EM" type="application/x-print-lodop" width="820" height="450" pluginspage="install_lodop32.exe" /> 88 id="LODOP_OB"
89 classid="clsid:2105C259-1E0C-4534-8141-A753534CB4CA"
90 v-show="false"
91 >
92 <embed
93 id="LODOP_EM"
94 type="application/x-print-lodop"
95 width="820"
96 height="450"
97 pluginspage="install_lodop32.exe"
98 />
53 </object> 99 </object>
54 <el-upload class="fileUpdate" action="" :show-file-list="false" multiple :auto-upload="false" 100 <el-upload
55 :on-change="handleChange" :before-upload="beforeUpload"> 101 class="fileUpdate"
56 <el-button id="cldr" icon="el-icon-upload" type="primary" v-show="false">上传</el-button> 102 action=""
103 :show-file-list="false"
104 multiple
105 :auto-upload="false"
106 :on-change="handleChange"
107 :before-upload="beforeUpload"
108 >
109 <el-button id="cldr" icon="el-icon-upload" type="primary" v-show="false"
110 >上传</el-button
111 >
57 </el-upload> 112 </el-upload>
58 </div> 113 </div>
59 </template> 114 </template>
60 <style scoped lang="scss"> 115 <style scoped lang="scss">
61 @import "~@/styles/mixin.scss"; 116 @import "~@/styles/mixin.scss";
62 @import "./workFrame.scss"; 117 @import "./workFrame.scss";
63 </style> 118 </style>
64 <script> 119 <script>
65 import WorkFlow from "./mixin/index" 120 import printJS from 'print-js'
66 import publicFlow from "./mixin/public.js" 121 import WorkFlow from "./mixin/index";
67 import { getStepFormInfo, unClaimTask, getZdInfo } from "@/api/workFlow.js" 122 import publicFlow from "./mixin/public.js";
68 import { getForm } from "./flowform" 123 import { getStepFormInfo, unClaimTask, getZdInfo } from "@/api/workFlow.js";
69 import NoticeBar from "@/components/NoticeBar/index" 124 import { getForm } from "./flowform";
70 // import ProcessViewer from "./components/processViewer.vue" 125 import NoticeBar from "@/components/NoticeBar/index";
71 // 引入左侧菜单 126 // import ProcessViewer from "./components/processViewer.vue"
72 import ordinaryMenu from "./components/leftmenu/ordinaryMenu.vue" 127 // 引入左侧菜单
73 // 引入左侧菜单 128 import ordinaryMenu from "./components/leftmenu/ordinaryMenu.vue";
74 import segmentMenu from "./components/leftmenu/segmentMenu.vue" 129 // 引入左侧菜单
75 import selectBdc from "@/views/ywbl/ywsq/selectBdc.vue" 130 import segmentMenu from "./components/leftmenu/segmentMenu.vue";
76 export default { 131 // 回执单
77 components: { 132 import receipt from "./components/receipt.vue";
78 selectBdc, 133 import selectBdc from "@/views/ywbl/ywsq/selectBdc.vue";
79 NoticeBar, 134 import { BatchInit } from "@/api/workflow/cfdjFlow.js";
80 ordinaryMenu, 135 export default {
81 segmentMenu 136 components: {
137 selectBdc,
138 NoticeBar,
139 ordinaryMenu,
140 segmentMenu,
141 receipt,
142 },
143 mixins: [WorkFlow, publicFlow],
144 data() {
145 return {
146 // printObj: {
147 // id: "box",
148 // preview: true,
149 // },
150 isDialog: false,
151 //受理申请标识码
152 bsmSlsq: this.$route.query.bsmSlsq,
153 //当前流程所在环节
154 bestepid: this.$route.query.bestepid,
155 //当前流程所在环节
156 zbhj: this.$route.query.zbhj,
157 //设置那个表单选中
158 tabName: "",
159 //设置那个表单选择
160 currentSelectTab: {},
161 //表单集合
162 tabList: [],
163 //选择加载哪一个组件
164 componentTag: "",
165 //设置表单传递数据
166 currentSelectProps: {},
167 //材料分屏表单
168 clxxForm: "",
169 //材料信息选择卡索引
170 clxxIndex: "",
171 //材料信息选项卡对象
172 clxxTab: {},
173 ableOperation: false,
174 //页面监听时间
175 _beforeUnload_time: "",
176 // 宗地id
177 bsmZd: "",
178 Receiptdata: {},
179 shows:false
180 };
181 },
182 mounted() {
183 this.$store.dispatch("user/refreshPage", false);
184 //添加页面监听事件
185 window.addEventListener("beforeunload", (e) => this.beforeunloadHandler(e));
186 window.addEventListener("unload", (e) => this.unloadHandler(e));
187 },
188 destroyed() {
189 window.removeEventListener("beforeunload", (e) =>
190 this.beforeunloadHandler(e)
191 );
192 window.removeEventListener("unload", (e) => this.unloadHandler(e));
193 },
194 methods: {
195 /**
196 * @description: openPrint
197 * @author:miaofang
198 */
199 openPrint() {
200
201 // 获取打印回执数据
202 var formdata = new FormData();
203 formdata.append("bsmSldy", this.currentSelectProps.bsmSldy);
204 formdata.append("bsmSlsq", this.bsmSlsq);
205 formdata.append("djlx", this.currentSelectProps.djlx);
206 BatchInit(formdata).then((res) => {
207 if (res.code === 200 && res.result) {
208 this.Receiptdata = res.result
209 this.shows=true
210 setTimeout(() => {
211 this.prinsss()
212 }, 100)
213
214 }
215 })
216
82 }, 217 },
83 mixins: [WorkFlow, publicFlow], 218 /**
84 data () { 219 * @description: prinsss
85 return { 220 * @author: miaofang
86 isDialog: false, 221 */
87 //受理申请标识码 222 prinsss(){
88 bsmSlsq: this.$route.query.bsmSlsq, 223 printJS({
89 //当前流程所在环节 224 printable: "boxaaa", // // 文档来源:pdf或图像的url,html元素的id或json数据的对象
90 bestepid: this.$route.query.bestepid, 225 type: "html",
91 //当前流程所在环节 226 maxWidth: 800, // 最大宽度
92 zbhj: this.$route.query.zbhj, 227 font_size: "", // 不设置则使用默认字体大小
93 //设置那个表单选中 228 style: `@font-face {
94 tabName: "", 229 font-family: "STZHONGS";
95 //设置那个表单选择 230 src: url(${window.ttf}) format("truetype");
96 currentSelectTab: {}, 231 }`,
97 //表单集合 232 // 继承原来的所有样式
98 tabList: [], 233 targetStyles: ["*"]
99 //选择加载哪一个组件 234 });
100 componentTag: "",
101 //设置表单传递数据
102 currentSelectProps: {},
103 //材料分屏表单
104 clxxForm: "",
105 //材料信息选择卡索引
106 clxxIndex: "",
107 //材料信息选项卡对象
108 clxxTab: {},
109 ableOperation: false,
110 //页面监听时间
111 _beforeUnload_time: "",
112 // 宗地id
113 bsmZd: ''
114 }
115 }, 235 },
116 mounted () { 236 /**
117 this.$store.dispatch('user/refreshPage', false); 237 * @description: getCurrentSelectProps
118 //添加页面监听事件 238 * @param {*} val
119 window.addEventListener("beforeunload", (e) => this.beforeunloadHandler(e)); 239 * @author: renchao
120 window.addEventListener("unload", (e) => this.unloadHandler(e)); 240 */
241 getCurrentSelectProps(val) {
242 this.currentSelectProps = val;
121 }, 243 },
122 destroyed () { 244 /**
123 window.removeEventListener("beforeunload", (e) => 245 * @description: beforeunloadHandler
124 this.beforeunloadHandler(e) 246 * @author: renchao
125 ); 247 */
126 window.removeEventListener("unload", (e) => this.unloadHandler(e)); 248 beforeunloadHandler() {
249 this._beforeUnload_time = new Date().getTime();
127 }, 250 },
128 methods: { 251 /**
129 /** 252 * @description: unloadHandler
130 * @description: getCurrentSelectProps 253 * @param {*} e
131 * @param {*} val 254 * @author: renchao
132 * @author: renchao 255 */
133 */ 256 unloadHandler(e) {
134 getCurrentSelectProps (val) { 257 this._gap_time = new Date().getTime() - this._beforeUnload_time;
135 this.currentSelectProps = val 258 //判断是窗口关闭还是刷新
136 }, 259 if (this._gap_time <= 10) {
137 /** 260 //取消认领
138 * @description: beforeunloadHandler 261 unClaimTask(this.bsmSlsq, this.bestepid);
139 * @author: renchao 262 }
140 */ 263 },
141 beforeunloadHandler () { 264 /**
142 this._beforeUnload_time = new Date().getTime(); 265 * @description: 申请单元点击事件
143 }, 266 * @param {*} index
144 /** 267 * @author: renchao
145 * @description: unloadHandler 268 */
146 * @param {*} e 269 stepForm(index) {
147 * @author: renchao 270 getStepFormInfo(this.currentSelectProps).then((res) => {
148 */ 271 if (res.code === 200) {
149 unloadHandler (e) { 272 // this.fresh++;
150 this._gap_time = new Date().getTime() - this._beforeUnload_time; 273 //获取单元对应的所有表单信息
151 //判断是窗口关闭还是刷新 274 this.tabList = res.result;
152 if (this._gap_time <= 10) { 275 //默认加载第一个表单信息
153 //取消认领 276 let arr = res.result.filter((item) => item.defaultForm);
154 unClaimTask(this.bsmSlsq, this.bestepid); 277 if (arr.length > 0) {
155 } 278 this.tabName = arr[0].value;
156 }, 279 } else {
157 /** 280 this.tabName = res.result[0].value;
158 * @description: 申请单元点击事件 281 }
159 * @param {*} index 282 this.ableOperation = this.tabList[0].ableOperation;
160 * @author: renchao 283 //批量操作无分屏按钮
161 */ 284 if (index != null) {
162 stepForm (index) { 285 //处理分屏材料信息
163 getStepFormInfo(this.currentSelectProps).then((res) => { 286 let that = this;
164 if (res.code === 200) {
165 // this.fresh++;
166 //获取单元对应的所有表单信息
167 this.tabList = res.result;
168 //默认加载第一个表单信息
169 let arr = res.result.filter(item => item.defaultForm)
170 if (arr.length > 0) {
171 this.tabName = arr[0].value;
172 } else {
173 this.tabName = res.result[0].value;
174 }
175 this.ableOperation = this.tabList[0].ableOperation
176 //批量操作无分屏按钮
177 if (index != null) {
178 //处理分屏材料信息
179 let that = this;
180 287
181 this.tabList.forEach(function (item, index) { 288 this.tabList.forEach(function (item, index) {
182 if (item.value == "clxx") { 289 if (item.value == "clxx") {
183 that.clxxIndex = index; 290 that.clxxIndex = index;
184 that.clxxForm = getForm(item.value, that.$route.query.sqywbm); 291 that.clxxForm = getForm(item.value, that.$route.query.sqywbm);
185 that.clxxTab = item; 292 that.clxxTab = item;
186 } 293 }
187 }) 294 });
188 }
189 } 295 }
190 })
191 },
192 /**
193 * @description: openDialog
194 * @author: renchao
195 */
196 openDialog () {
197 this.$store.dispatch('user/refreshPage', false)
198 let data = JSON.parse(localStorage.getItem('ywbl'))
199 let title
200 if (data?.sqywmc) {
201 title = "申请业务:" + data?.sqywmc
202 } else {
203 title = "申请业务:" + data?.djywmc
204 } 296 }
297 });
298 },
299 /**
300 * @description: openDialog
301 * @author: renchao
302 */
303 openDialog() {
304 this.$store.dispatch("user/refreshPage", false);
305 let data = JSON.parse(localStorage.getItem("ywbl"));
306 let title;
307 if (data?.sqywmc) {
308 title = "申请业务:" + data?.sqywmc;
309 } else {
310 title = "申请业务:" + data?.djywmc;
311 }
205 312
206 this.$popupDialog(title, "ywbl/ywsq/selectBdc", { 'djywbm': this.$route.query.sqywbm, 'isJump': true, 'sqywInfo': data }, "80%", true) 313 this.$popupDialog(
207 }, 314 title,
208 //选项卡切换事件 315 "ywbl/ywsq/selectBdc",
209 /** 316 { djywbm: this.$route.query.sqywbm, isJump: true, sqywInfo: data },
210 * @description: 右侧表单选项卡事件 317 "80%",
211 * @param {*} handleClick 318 true
212 * @author: renchao 319 );
213 */ 320 },
214 handleClick (a) { 321 //选项卡切换事件
215 let p = Object.keys(this.tabList[0]).filter( 322 /**
216 (item) => item == "ableOperation" 323 * @description: 右侧表单选项卡事件
217 ); 324 * @param {*} handleClick
218 if (p) { 325 * @author: renchao
219 this.ableOperation = this.tabList[a.index].ableOperation; 326 */
220 } 327 handleClick(a) {
221 }, 328 let p = Object.keys(this.tabList[0]).filter(
222 } 329 (item) => item == "ableOperation"
223 } 330 );
331 if (p) {
332 this.ableOperation = this.tabList[a.index].ableOperation;
333 }
334 },
335 },
336 };
224 </script> 337 </script>
225 <style scoped lang="scss"> 338 <style scoped lang="scss">
226 .rightContainer { 339 @page {
227 position: relative; 340 size: auto;
228 } 341 margin: 0mm;
229 .count { 342 }
230 font-size: 14px; 343 .rightContainer {
231 position: absolute; 344 position: relative;
232 right: 25px; 345 }
233 top: 12px; 346
234 height: 30px; 347 .count {
235 span { 348 font-size: 14px;
236 font-weight: 600; 349 position: absolute;
237 color: #3498db; 350 right: 25px;
238 } 351 top: 12px;
352 height: 30px;
353 span {
354 font-weight: 600;
355 color: #3498db;
239 } 356 }
357
358 }
240 </style> 359 </style>
......