e19b50fe by renchao@pashanhoo.com

Merge branch 'dev'

2 parents 501683c9 1e7fbdd1
1 /* 1 /*
2 * @Description: 模板管理 2 * @Description: 模板管理
3 * @Autor: renchao 3 * @Autor: renchao
4 * @LastEditTime: 2023-05-16 16:02:32 4 * @LastEditTime: 2024-02-23 10:45:18
5 */ 5 */
6 6
7 import request from '@/utils/request' 7 import request from '@/utils/request'
...@@ -71,3 +71,45 @@ export function getPrintTemplateByCode (params) { ...@@ -71,3 +71,45 @@ export function getPrintTemplateByCode (params) {
71 params: params 71 params: params
72 }) 72 })
73 } 73 }
74
75 /**
76 * @description: 获取受理凭证
77 * @param {*} params
78 * @author: renchao
79 */
80 export function getPrintAcceptance (bsmSldy) {
81 return request({
82 url: SERVER.SERVERAPI + '/rest/print/applicationForms/getPrintAcceptance',
83 method: 'get',
84 params: {
85 bsmSldy: bsmSldy
86 }
87 })
88 }
89
90 /**
91 * @description: 获取补充材料通知书
92 * @param {*} bsmSldy
93 * @author: renchao
94 */
95 export function getPrintSupplementalMaterials (bsmSldy, data) {
96 return request({
97 url: SERVER.SERVERAPI + '/rest/print/applicationForms/getPrintSupplementalMaterials/' + bsmSldy,
98 method: 'post',
99 data
100 })
101 }
102 /**
103 * @description: 获取补充材料接收凭证
104 * @param {*} bsmSldy
105 * @author: renchao
106 */
107 export function getPrintReceiveSupplementalMaterials (bsmSldy) {
108 return request({
109 url: SERVER.SERVERAPI + '/rest/print/applicationForms/getPrintReceiveSupplementalMaterials',
110 method: 'get',
111 params: {
112 bsmSldy: bsmSldy
113 }
114 })
115 }
......
1 <!--
2 * @Description: 功能:流程图
3 * @Autor: renchao
4 * @LastEditTime: 2023-05-17 10:40:57
5 -->
6 <template>
7 <div class='flowChart'>
8 <img :src="formData" alt="">
9 </div>
10 </template>
11 <script>
12
13 export default {
14 props: {
15 formData: {
16 type: String,
17 default: ''
18 }
19 }
20 }
21 </script>
22 <style scoped lang="scss">
23 @import "~@/styles/mixin.scss";
24
25 .flowChart {
26 margin: 20px 0;
27 }
28 </style>
...\ No newline at end of file ...\ No newline at end of file
...@@ -1379,6 +1379,10 @@ class data extends filter { ...@@ -1379,6 +1379,10 @@ class data extends filter {
1379 label: "小地名", 1379 label: "小地名",
1380 }, 1380 },
1381 { 1381 {
1382 prop: "bdcqzh",
1383 label: "不动产权证号",
1384 },
1385 {
1382 prop: "djjg", 1386 prop: "djjg",
1383 label: "登记机构", 1387 label: "登记机构",
1384 }, 1388 },
......
1 <!--
2 * @Description: 流程图
3 * @Autor: renchao
4 * @LastEditTime: 2023-07-25 09:26:01
5 -->
6 <template>
7 <div class='flowChart'>
8 <img :src="formData" alt="">
9 </div>
10 </template>
11 <script>
12 export default {
13 props: {
14 formData: {
15 type: String,
16 default: ''
17 }
18 }
19 }
20 </script>
21 <style scoped lang="scss">
22 @import "~@/styles/mixin.scss";
23
24 .flowChart {
25 margin: 20px 0;
26 }
27 </style>
...\ No newline at end of file ...\ No newline at end of file
1 <!--
2 * @Description:
3 * @Autor: renchao
4 * @LastEditTime: 2023-07-17 13:51:09
5 -->
6 <template>
7 <lb-table :column="column" :maxHeight="300" heightNumSetting :pagination="false" :key="key" :data="tableData">
8 </lb-table>
9 </template>
10 <script>
11 import addQlr from './dialog/addQlr.vue'
12 import { mapGetters } from 'vuex'
13 export default {
14 components: {
15 addQlr
16 },
17 computed: {
18 ...mapGetters(["dictData"]),
19 },
20 props: {
21 tableData: {
22 type: Array,
23 default: function () {
24 return []
25 }
26 },
27 gyfs: {
28 type: String,
29 default: '1'
30 }
31 },
32 data () {
33 return {
34 key: 0,
35 dataIndex: 0,
36 dialog: false,
37 details: {},
38 tableDataList: [],
39 qlrCommonTable: [
40 {
41 width: '50',
42 renderHeader: (h, scope) => {
43 return <div> {
44 this.ableOperation ? '序号' : <i class="el-icon-plus pointer" onClick={() => { this.handleAdd() }}></i>
45 }
46 </div>
47 },
48 render: (h, scope) => {
49 return (
50 <div>
51 {
52 this.ableOperation ? <span>{scope.$index + 1}</span> :
53 <i class="el-icon-minus pointer" onClick={() => { this.handleMinus(scope.$index, scope.row) }}></i>
54 }
55 </div>
56 )
57 }
58 },
59 {
60 prop: "sqrmc",
61 label: "姓名/名称"
62 },
63 {
64 prop: "zjzl",
65 label: "证件种类"
66 },
67 {
68 prop: "zjh",
69 label: "证件号"
70 },
71 {
72 prop: "dh",
73 label: "联系电话"
74 },
75 {
76 prop: "frmc",
77 label: "法人"
78 },
79 {
80 label: '操作',
81 render: (h, scope) => {
82 return (
83 <div>
84 {
85 <el-button icon="el-icon-view" type="text" onClick={() => { this.handleView(scope.$index, scope.row) }}>查看</el-button>
86 }
87 </div>
88 )
89 }
90 }
91 ],
92 column: this.qlrCommonTable
93 }
94 },
95 watch: {
96 tableData: {
97 handler: function (val, oldVal) {
98 let that = this
99 if (val.length == 0 || !val) {
100 that.tableDataList = _.cloneDeep([{
101 sqrmc: '',
102 dlrzjlx: '',
103 dlrzjh: '',
104 fr: ''
105 }])
106 } else {
107 that.tableDataList = _.cloneDeep(val)
108 }
109 },
110 immediate: true,
111 deep: true
112 },
113 gyfs: {
114 handler (newVal, oldValue) {
115 let dataList = _.cloneDeep(this.qlrCommonTable)
116 if (newVal == '1') {
117 this.column = _.cloneDeep(dataList).slice(1, dataList.length)
118 } else if ((newVal == '2')) {
119 this.column = dataList
120 } else {
121 this.column = _.cloneDeep(dataList)
122 this.column.splice(
123 2, 0, {
124 prop: "qlbl",
125 label: "份数"
126 })
127 }
128 },
129 immediate: true
130 }
131 },
132 methods: {
133 /**
134 * @description: updateDetail
135 * @param {*} value
136 * @author: renchao
137 */
138 updateDetail (value) {
139 this.tableDataList[this.dataIndex] = value
140 this.key++
141 this.$emit('upDateQlrxxList', this.tableDataList)
142 },
143 // 添加
144 /**
145 * @description: 添加
146 * @author: renchao
147 */
148 handleAdd () {
149 this.dialog = true
150 },
151 // 减
152 /**
153 * @description: 减
154 * @param {*} index
155 * @param {*} row
156 * @author: renchao
157 */
158 handleMinus (index, row) {
159 this.tableData.splice(index, 1)
160 },
161 // 身份证读取
162 /**
163 * @description: 身份证读取
164 * @author: renchao
165 */
166 readClick () { },
167 // 修改
168 /**
169 * @description: 修改
170 * @param {*} index
171 * @param {*} row
172 * @author: renchao
173 */
174 handleEdit (index, row) {
175 console.log(row, 'rowrowrowrowrow');
176 this.dataIndex = index
177 this.dialog = true
178 this.details = row
179 },
180 /**
181 * @description: handleView
182 * @author: renchao
183 */
184 handleView () {
185 this.dialog = true
186 }
187 }
188 }
189 </script>
190 <style scoped lang="scss">
191 /deep/.el-table th {
192 height: 30px !important;
193 }
194 /deep/.el-table--small .el-table__cell {
195 padding: 5px;
196 }
197 </style>
1 <!--
2 * @Description:
3 * @Autor: renchao
4 * @LastEditTime: 2023-09-27 08:51:13
5 -->
6 <template>
7 <div class="from-clues">
8 <div class="invalid-title">
9 <i class="el-icon-question invalid-icon"></i>
10 <div class="invalid-body">您是否确定终止该业务办理?</div>
11 </div>
12 <div class="invalid-reson">退件原因:</div>
13 <el-input
14 v-model="stopMessage"
15 placeholder="请输入终止原因"
16 type="textarea"
17 :rows="4"></el-input>
18 <div style="overflow:hidden;text-align:center;margin-top:10px">
19 <el-button @click="cancelBack">取消</el-button>
20 <el-button type="primary" @click="onSubmit">退件</el-button>
21 </div>
22 </div>
23 </template>
24
25 <script>
26 import { stopTask } from "@/api/workFlow.js";
27 import { popupCacel } from "@/utils/popup.js";
28 export default {
29 props: {
30 formData: {
31 type: Object,
32 default: {},
33 },
34 },
35 data () {
36 return {
37 stopMessage: "",
38 };
39 },
40 methods: {
41 /**
42 * @description: onSubmit
43 * @author: renchao
44 */
45 onSubmit () {
46 stopTask({
47 bsmSlsq: this.formData.bsmSlsq,
48 bestepid: this.formData.bestepid,
49 stopMessage: this.stopMessage,
50 }).then((res) => {
51 this.$message.success("终止成功");
52 setTimeout(() => {
53 // window.opener.location.reload(); //刷新父窗口
54 if (window.opener && window.opener.getBpageList) {
55 window.opener.getBpageList();
56 } else {
57 window.opener.frames[0].getBpageList();
58 }
59 window.close();
60 this.$emit("input", false);
61 }, 1000);
62 });
63 },
64 /**
65 * @description: closeDialog
66 * @author: renchao
67 */
68 cancelBack () {
69 popupCacel();
70 },
71 },
72 };
73 </script>
74 <style scoped lang="scss">
75 @import "~@/styles/mixin.scss";
76 .invalid-title {
77 display: flex;
78 align-content: center;
79
80 .invalid-icon {
81 color: rgb(254, 148, 0);
82 font-size: 34px;
83 margin-right: 10px;
84 }
85
86 .invalid-body {
87 line-height: 40px;
88 margin-bottom: 10px;
89 }
90 }
91
92 .invalid-reson {
93 margin-bottom: 10px;
94 }
95
96 .dialog-footer {
97 margin-top: 10px;
98 display: flex;
99 justify-content: flex-end;
100 }
101 </style>
...@@ -312,7 +312,7 @@ ...@@ -312,7 +312,7 @@
312 this.$store.dispatch("user/reWorkFresh", false); 312 this.$store.dispatch("user/reWorkFresh", false);
313 this.$popupDialog( 313 this.$popupDialog(
314 "申请材料目录", 314 "申请材料目录",
315 "workflow/components/dialog/clxxDetailDialog", 315 "workflow/main/clxx/clxxDetailDialog",
316 { 316 {
317 data: this.tableData, 317 data: this.tableData,
318 bsmSldy: this.$parent.currentSelectProps.bsmSldy, 318 bsmSldy: this.$parent.currentSelectProps.bsmSldy,
......
...@@ -155,7 +155,7 @@ ...@@ -155,7 +155,7 @@
155 }, 155 },
156 hanldeAdd () { 156 hanldeAdd () {
157 let bsmBusiness = this.$route.query.bsmBusiness ? this.$route.query.bsmBusiness : window.currentSelect.bsmBusiness 157 let bsmBusiness = this.$route.query.bsmBusiness ? this.$route.query.bsmBusiness : window.currentSelect.bsmBusiness
158 this.$popupDialog('新增', 'workflow/components/dialog/xzsf', { bsmBusiness: bsmBusiness }, '50%', true) 158 this.$popupDialog('新增', 'workflow/main/sfxx/xzsf', { bsmBusiness: bsmBusiness }, '50%', true)
159 }, 159 },
160 handleDelete (row) { 160 handleDelete (row) {
161 let that = this 161 let that = this
......
...@@ -285,7 +285,6 @@ ...@@ -285,7 +285,6 @@
285 </div> 285 </div>
286 </template> 286 </template>
287 <script> 287 <script>
288 import sqrViewTable from "@/views/workflow/components/sqrViewTable";
289 import { Init, saveData } from "@/api/workflow/cfdjFlow.js"; 288 import { Init, saveData } from "@/api/workflow/cfdjFlow.js";
290 import { mapGetters } from "vuex"; 289 import { mapGetters } from "vuex";
291 export default { 290 export default {
...@@ -341,7 +340,7 @@ ...@@ -341,7 +340,7 @@
341 }); 340 });
342 }, 341 },
343 watch: {}, 342 watch: {},
344 components: { sqrViewTable }, 343 components: { },
345 props: { 344 props: {
346 flag: { 345 flag: {
347 type: Boolean, 346 type: Boolean,
......
1 <!--
2 * @Description: 房屋多幢明细
3 * @Autor:
4 * @LastEditTime: 2023-09-01 13:29:29
5 -->
6 <template>
7 <div>
8 <el-table
9 :data="tableDataList"
10 border
11 :pagination="false"
12 :key="key"
13 :header-cell-style="{ 'text-align': 'center' }"
14 :heightNumSetting="true"
15 :minHeight="150"
16 height="150"
17 style="width: 100%">
18 <el-table-column prop="index" width="50" :render-header="renderHeader">
19 <template slot-scope="scope">
20 <div style="text-align: center">{{ scope.$index + 1 }}</div>
21 </template>
22 </el-table-column>
23 <el-table-column prop="bdcdyh" label="不动产单元号" min-width="100">
24 <template slot-scope="scope">
25 <div style="text-align: center">{{ scope.row.bdcdyh }}</div>
26 </template>
27 </el-table-column>
28 <el-table-column prop="xmmc" label="项目名称" min-width="100">
29 <template slot-scope="scope">
30 <el-input
31 class="item"
32 :disabled="!ableOperation"
33 v-model="scope.row.xmmc"
34 placeholder="请输入内容"
35 @input="updaterow(scope.row)">
36 </el-input>
37 </template>
38 </el-table-column>
39 <el-table-column prop="fwxz" label="房屋性质" min-width="100">
40 <template slot-scope="scope">
41 <treeselect
42 v-model="scope.row.fwxz"
43 :disabled="!ableOperation"
44 noOptionsText="暂无数据"
45 placeholder=""
46 :show-count="true"
47 :options="dictData['A19']"
48 :normalizer="normalizer"
49 :appendToBody="true"
50 z-index="9999"
51 @input="updaterow(scope.row)" />
52 </template>
53 </el-table-column>
54 <el-table-column prop="ghyt" label="房屋用途" min-width="100">
55 <template slot-scope="scope">
56 <treeselect
57 v-model="scope.row.ghyt"
58 :disabled="!ableOperation"
59 noOptionsText="暂无数据"
60 placeholder=""
61 :show-count="true"
62 :options="dictData['A17']"
63 :normalizer="normalizer"
64 :appendToBody="true"
65 z-index="9999"
66 @input="updaterow(scope.row)" />
67 </template>
68 </el-table-column>
69 <el-table-column prop="fwjg" label="房屋结构" min-width="100">
70 <template slot-scope="scope">
71 <treeselect
72 v-model="scope.row.fwjg"
73 :disabled="!ableOperation"
74 noOptionsText="暂无数据"
75 placeholder=""
76 :show-count="true"
77 :options="dictData['A46']"
78 :normalizer="normalizer"
79 :appendToBody="true"
80 z-index="9999"
81 @input="updaterow(scope.row)" />
82 </template>
83 </el-table-column>
84 <el-table-column prop="jzmj" label="建筑面积" min-width="100">
85 <template slot-scope="scope">
86 <el-input
87 maxlength="12"
88 class="item"
89 :disabled="!ableOperation"
90 oninput="value = (value.match(/^\d*(\.?\d{0,2})/g)[0]) || null"
91 v-model="scope.row.jzmj"
92 placeholder="请输入内容"
93 @input="updaterow(scope.row)">
94 </el-input>
95 </template>
96 </el-table-column>
97 <el-table-column prop="jgsj" label="竣工时间" min-width="100">
98 <template slot-scope="scope">
99 <el-date-picker
100 v-model="scope.row.jgsj"
101 type="date"
102 :disabled="!ableOperation"
103 placeholder="选择日期"
104 value-format="yyyy-MM-dd HH:mm:ss"
105 format="yyyy-MM-dd"
106 @input="updaterow(scope.row)">
107 </el-date-picker>
108 </template>
109 </el-table-column>
110 <el-table-column prop="zcs" label="总层数" min-width="100">
111 <template slot-scope="scope">
112 <el-input
113 class="item"
114 :disabled="!ableOperation"
115 oninput="value = (value.match(/^\d*(\.?\d{0,2})/g)[0]) || null"
116 v-model="scope.row.zcs"
117 placeholder="请输入内容"
118 @input="updaterow(scope.row)">
119 </el-input>
120 </template>
121 </el-table-column>
122 <el-table-column prop="zts" label="总套数" min-width="100">
123 <template slot-scope="scope">
124 <el-input
125 class="item"
126 :disabled="!ableOperation"
127 oninput="value = (value.match(/^\d*(\.?\d{0,2})/g)[0]) || null"
128 v-model="scope.row.zts"
129 placeholder="请输入内容"
130 @input="updaterow(scope.row)">
131 </el-input>
132 </template>
133 </el-table-column>
134 </el-table>
135 </div>
136 </template>
137 <script>
138 import { mapGetters } from "vuex";
139
140 export default {
141 computed: {
142 ...mapGetters(["dictData"]),
143 },
144 props: {
145 tableData: {
146 type: Array,
147 default: function () {
148 return [];
149 },
150 },
151 ableOperation: {
152 type: Boolean,
153 default: false,
154 },
155
156 },
157 data () {
158 return {
159 // 键名转换,方法默认是label和children进行树状渲染
160 key: 0,
161 tableDataList: [],
162 normalizer (node) {
163 if (node.children == null || node.children == "null") {
164 delete node.children;
165 }
166 return {
167 id: node.dcode,
168 label: node.dname,
169 children: node.children,
170 };
171 },
172 };
173 },
174 mounted () {
175 },
176 watch: {
177 tableData: {
178 handler: function (val, oldVal) {
179 let that = this;
180 this.$nextTick(() => {
181 if (val.length == 0 || !val) {
182 that.tableDataList = _.cloneDeep([
183 {
184 yt: null,
185 qssj: "",
186 jssj: "",
187 tdsyqx: "",
188 },
189 ]);
190 } else {
191 that.tableDataList = _.cloneDeep(val);
192 }
193 });
194 },
195 immediate: true,
196 deep: true,
197 },
198 },
199 methods: {
200 /**
201 * @description: renderHeader
202 * @author: renchao
203 */
204 renderHeader () {
205 return (
206 <div>
207 {"序号"}
208 </div>
209 );
210 },
211 updaterow (a) {
212 this.$emit("updateFdcwxmList", this.tableDataList);
213 }
214 }
215 }
216 </script>
217 <style scoped lang="scss">
218 .el-input {
219 border: none !important;
220 }
221
222 /deep/ .el-table__row {
223 border: none !important;
224 }
225
226 .el-date-editor.el-input {
227 width: 100%;
228 }
229
230 /deep/ .el-table th {
231 height: 30px !important;
232 }
233 </style>
234
1 <!-- 1 <!--
2 * @Description: 房屋多幢受理信息 2 * @Description: 房屋多幢受理信息
3 * @Autor: ssq 3 * @Autor: ssq
4 * @LastEditTime: 2024-01-31 10:11:41 4 * @LastEditTime: 2024-02-27 14:02:53
5 --> 5 -->
6 <template> 6 <template>
7 <div class="slxx"> 7 <div class="slxx">
...@@ -296,7 +296,7 @@ ...@@ -296,7 +296,7 @@
296 import ywmix from "@/views/ywbl/mixin/index"; 296 import ywmix from "@/views/ywbl/mixin/index";
297 import qlrCommonTable from "@/views/workflow/components/qlrCommonTable"; 297 import qlrCommonTable from "@/views/workflow/components/qlrCommonTable";
298 import ywrCommonTable from "@/views/workflow/components/ywrCommonTable"; 298 import ywrCommonTable from "@/views/workflow/components/ywrCommonTable";
299 import fdcqxmTable from "../commonTable/fdcqxmTable"; 299 import fdcqxmTable from "./fdcqxmTable";
300 import tdytTable from "@/views/workflow/components/tdytTable"; 300 import tdytTable from "@/views/workflow/components/tdytTable";
301 import { Init, saveData } from "@/api/workflow/fwsyq1Flow.js"; 301 import { Init, saveData } from "@/api/workflow/fwsyq1Flow.js";
302 import { mapGetters } from "vuex"; 302 import { mapGetters } from "vuex";
...@@ -304,7 +304,7 @@ ...@@ -304,7 +304,7 @@
304 mixins: [ywmix], 304 mixins: [ywmix],
305 mounted () { 305 mounted () {
306 let that = this 306 let that = this
307 this.loading = true 307 // this.loading = true
308 this.viewEdit = this.$parent.currentSelectTab.ableOperation; 308 this.viewEdit = this.$parent.currentSelectTab.ableOperation;
309 this.propsParam = this.$attrs; 309 this.propsParam = this.$attrs;
310 var formdata = new FormData(); 310 var formdata = new FormData();
......
1 <!--
2 * @Description: 受理信息
3 * @Autor: renchao
4 * @LastEditTime: 2024-01-30 16:07:53
5 -->
6 <template>
7 <div class="slxx">
8 <el-form
9 :model="ruleForm"
10 :rules="rules"
11 v-Loading="loading"
12 ref="ruleForm"
13 :label-position="flag ? 'top' : ''"
14 :inline="flag"
15 label-width="120px">
16 <div class="slxx_con" :class="flag ? 'formMarginBot0' : ''">
17 <div class="slxx_title title-block">
18 申请业务信息
19 <div class="triangle"></div>
20 </div>
21 <el-row :gutter="10" v-if="ruleForm.slsq">
22 <el-col :span="8">
23 <el-form-item label="业务号:">
24 <el-input disabled v-model="ruleForm.flow.ywh"></el-input>
25 </el-form-item>
26 </el-col>
27 <el-col :span="8">
28 <el-form-item label="受理人员:">
29 <el-input disabled v-model="ruleForm.slsq.slry"></el-input>
30 </el-form-item>
31 </el-col>
32 <el-col :span="8">
33 <el-form-item label="受理时间:">
34 <el-input disabled v-model="ruleForm.slsq.slsj"></el-input>
35 </el-form-item>
36 </el-col>
37 </el-row>
38 <el-row :gutter="10" v-if="ruleForm.slsq">
39 <el-col :span="8">
40 <el-form-item label="权利类型:">
41 <el-input disabled v-model="ruleForm.sldy.qllxmc"></el-input>
42 </el-form-item>
43 </el-col>
44 <el-col :span="8">
45 <el-form-item label="登记类型:">
46 <el-input disabled v-model="ruleForm.sldy.djlxmc"></el-input>
47 </el-form-item>
48 </el-col>
49 <el-col :span="8">
50 <el-form-item label="登记情形:">
51 <el-input disabled v-model="ruleForm.slsq.djqxmc"></el-input>
52 </el-form-item>
53 </el-col>
54 </el-row>
55 <div class="slxx_title title-block">
56 <el-row>
57 <el-col :span="16">
58 不动产单元情况
59 </el-col>
60 <el-col :span="4" v-show="ruleForm.sldy.djlx=='500'">
61 <el-form-item label="是否创建证书:" style="height:24px">
62 <el-radio-group v-model="ruleForm.sldy.sfxysczs">
63 <el-radio label="1"></el-radio>
64 <el-radio label="0"></el-radio>
65 </el-radio-group>
66 </el-form-item>
67 </el-col>
68 <el-col :span="4" v-show="ruleForm.sldy.djlx=='300'||ruleForm.sldy.djlx=='500'">
69 <el-button @click="compare">变化情况对比+</el-button>
70 </el-col>
71 </el-row>
72 <div class="triangle"></div>
73 </div>
74 <el-row :gutter="10" v-if="ruleForm.qlxx">
75 <el-col :span="8">
76 <el-form-item label="不动产单元号:">
77 <el-input disabled v-model="ruleForm.qlxx.bdcdyh"></el-input>
78 </el-form-item>
79 </el-col>
80 <el-col :span="16">
81 <el-form-item label="坐落:">
82 <el-input disabled v-model="ruleForm.sldy.zl"></el-input>
83 </el-form-item>
84 </el-col>
85 </el-row>
86 <el-row :gutter="10" v-if="ruleForm.fdcq2">
87 <el-col :span="8">
88 <el-form-item label="土地用途:">
89 <el-input disabled v-model="ruleForm.fdcq2.yt"></el-input>
90 </el-form-item>
91 </el-col>
92 <el-col :span="8">
93 <el-form-item label="土地使用起止时间:">
94 <el-input disabled v-model="ruleForm.fdcq2.tdsyqzsj"></el-input>
95 </el-form-item>
96 </el-col>
97 <el-col :span="8">
98 <el-form-item label="土地使用期限:">
99 <el-input disabled v-model="ruleForm.fdcq2.tdsyqx"></el-input>
100 </el-form-item>
101 </el-col>
102 </el-row>
103 <el-row :gutter="10" v-if="ruleForm.qlxx">
104 <el-col :span="8">
105 <el-form-item label="规划用途名称:">
106 <el-input disabled v-model="ruleForm.zdjbxx.ghytmc"></el-input>
107 </el-form-item>
108 </el-col>
109 <el-col :span="8">
110 <el-form-item label="房屋性质:">
111 <el-input disabled v-model="ruleForm.fdcq2.fwxzmc"></el-input>
112 </el-form-item>
113 </el-col>
114 <el-col :span="8">
115 <el-form-item label="房屋结构:">
116 <el-input disabled v-model="ruleForm.fdcq2.fwjgmc"></el-input>
117 </el-form-item>
118 </el-col>
119 </el-row>
120 <el-row :gutter="10" v-if="ruleForm.fdcq2">
121 <el-col :span="8">
122 <el-form-item label="所在层:">
123 <el-input disabled v-model="ruleForm.fdcq2.szc"></el-input>
124 </el-form-item>
125 </el-col>
126 <el-col :span="8">
127 <el-form-item label="总层数:">
128 <el-input
129 disabled
130 v-model.number="ruleForm.fdcq2.zcs"
131 oninput="value=value.replace(/[^0-9]/g,'')"></el-input>
132 </el-form-item>
133 </el-col>
134 <el-col :span="8">
135 <el-form-item label="竣工时间:">
136 <el-input disabled v-model="ruleForm.fdcq2.jgsj"></el-input>
137 </el-form-item>
138 </el-col>
139 </el-row>
140 <el-row :gutter="10" v-if="ruleForm.qlxx">
141 <el-col :span="8">
142 <el-form-item label="建筑面积:">
143 <div class="flex">
144 <el-input
145 disabled
146 v-model="ruleForm.qlxx.mj"
147 oninput="value = (value.match(/^\d*(\.?\d{0,2})/g)[0]) || null"></el-input>
148 <el-select disabled v-model="mjdw" style="width: 68px">
149 <el-option
150 v-for="item in dictData['A7']"
151 :key="item.dcode"
152 :label="item.dname"
153 :value="item.dcode">
154 </el-option>
155 </el-select>
156 </div>
157 </el-form-item>
158 </el-col>
159 <el-col :span="8">
160 <el-form-item label="专有建筑面积:">
161 <div class="flex">
162 <el-input
163 disabled
164 v-model="ruleForm.fdcq2.zyjzmj"
165 oninput="value = (value.match(/^\d*(\.?\d{0,2})/g)[0]) || null"></el-input>
166 <el-select disabled v-model="mjdw" style="width: 68px">
167 <el-option
168 v-for="item in dictData['A7']"
169 :key="item.dcode"
170 :label="item.dname"
171 :value="item.dcode">
172 </el-option>
173 </el-select>
174 </div>
175 </el-form-item>
176 </el-col>
177 <el-col :span="8">
178 <el-form-item label="分摊建筑面积:">
179 <div class="flex">
180 <el-input
181 disabled
182 v-model="ruleForm.fdcq2.ftjzmj"
183 oninput="value = (value.match(/^\d*(\.?\d{0,2})/g)[0]) || null"></el-input>
184 <el-select disabled v-model="mjdw" style="width: 68px">
185 <el-option
186 v-for="item in dictData['A7']"
187 :key="item.dcode"
188 :label="item.dname"
189 :value="item.dcode">
190 </el-option>
191 </el-select>
192 </div>
193 </el-form-item>
194 </el-col>
195 </el-row>
196 <div class="slxx_title title-block">
197 土地用途
198 <div class="triangle"></div>
199 </div>
200 <tdytTable
201 :ableOperation="viewEdit"
202 :tableData="ruleForm.tdytqxList"
203 @upDateTdytxxList="upDateTdytxxList" />
204 <div class="slxx_title title-block">
205 权利人信息
206 <div class="triangle"></div>
207 </div>
208 <el-row :gutter="10">
209 <el-col :span="12">
210 <el-form-item label="共有方式:">
211 <el-radio-group
212 :disabled="!viewEdit"
213 v-model="ruleForm.sldy.gyfs">
214 <el-radio label="0">单独所有</el-radio>
215 <el-radio label="1">共同共有</el-radio>
216 <el-radio label="2">按份所有</el-radio>
217 <el-radio label="3">其它共有</el-radio>
218 </el-radio-group>
219 </el-form-item>
220 </el-col>
221 <el-col :span="6" v-show="ruleForm.sldy.gyfs != '0'">
222 <el-form-item label="是否分别持证:">
223 <el-radio-group
224 v-model="ruleForm.sldy.sqfbcz"
225 :disabled="!viewEdit"
226 @input="updaterow()">
227 <el-radio :label="1"></el-radio>
228 <el-radio :label="0"></el-radio>
229 </el-radio-group>
230 </el-form-item>
231 </el-col>
232 <el-col
233 :span="6"
234 v-show="ruleForm.sldy.sqfbcz == '0' && ruleForm.sldy.gyfs != '0'">
235 <el-form-item label="持证人:">
236 <el-select
237 v-model="czr"
238 placeholder="持证人"
239 :disabled="!viewEdit">
240 <el-option
241 v-for="(item,index) in czrOptions"
242 :key="index"
243 :label="item.sqrmc"
244 :value="item.id">
245 </el-option>
246 </el-select>
247 </el-form-item>
248 </el-col>
249 </el-row>
250 <qlrCommonTable
251 @upDateQlrxxList="upDateQlrxxList"
252 :disabled="!viewEdit"
253 :tableData="ruleForm.qlrList"
254 :gyfs="ruleForm.sldy.gyfs" />
255 <div class="slxx_title title-block">
256 登记原因
257 <div class="triangle"></div>
258 </div>
259 <el-row :gutter="10">
260 <el-col>
261 <el-form-item v-if="ruleForm.fdcq2" label="登记原因:" prop="fdcq2.djyy">
262 <el-input
263 class="textArea"
264 type="textarea"
265 maxlength="500"
266 show-word-limit
267 :disabled="!viewEdit"
268 v-model="ruleForm.fdcq2.djyy">
269 </el-input>
270 </el-form-item>
271 </el-col>
272 </el-row>
273 </div>
274 <el-row class="btn" v-if="isSave">
275 <el-form-item>
276 <el-button type="primary" @click="onSubmit">保存</el-button>
277 </el-form-item>
278 </el-row>
279 </el-form>
280 </div>
281 </template>
282 <script>
283 import ywmix from "@/views/ywbl/mixin/index";
284 import qlrCommonTable from "@/views/workflow/components/qlrCommonTable";
285 import tdytTable from "@/views/workflow/components/tdytTable";
286 import { Init, saveData } from "@/api/workflow/fwsyqFlow.js";
287 import { mapGetters } from "vuex";
288 export default {
289 mixins: [ywmix],
290 mounted () {
291 let that = this
292 this.loading = true
293 this.viewEdit = this.$parent.currentSelectTab.ableOperation;
294 this.propsParam = this.$attrs;
295 var formdata = new FormData();
296 formdata.append("bsmSldy", this.propsParam.bsmSldy);
297 formdata.append("djlx", this.propsParam.djlx);
298 formdata.append("isEdit", this.viewEdit);
299 Init(formdata).then((res) => {
300 setTimeout(() => {
301 this.loading = false
302 }, 200)
303 if (res.code === 200 && res.result) {
304 that.ruleForm = {
305 ...res.result,
306 ...res.result.zdjbxxdatas,
307 ...res.result.qlxxdatas,
308 ...res.result.jsydsyqdatas,
309 };
310 that.ruleForm.qlrList.forEach((item) => {
311 item.id = item.bsmSqr
312 if (item.sfczr == '1') {
313 that.czr = item.bsmSqr
314 }
315 })
316 that.czrOptions = that.ruleForm.qlrList;
317 that.isSave = that.viewEdit
318 } else {
319 that.isSave = false
320 that.$confirm(res.message, '提示', {
321 cancelButtonText: '取消',
322 showConfirmButton: false,
323 type: 'warning'
324 })
325 }
326 }).catch(() => {
327 this.loading = false
328 this.isSave = false
329 })
330 },
331 components: { qlrCommonTable, tdytTable },
332 computed: {
333 ...mapGetters(["dictData", "flag"]),
334 },
335 data () {
336 return {
337 isSave: true,
338 loading: false,
339 mjdw: "1",
340 //表单是否可操作
341 viewEdit: false,
342 disabled: true,
343 tdytOption: [],
344 czrOptions: [],
345 czr: "",
346 ruleForm: {
347 flow: {
348 ywh: "",
349 },
350 slry: "",
351 slsj: "",
352 qllx: "",
353 djlx: "",
354 djqx: "",
355 sldy: {
356 gyfs: "",
357 },
358 // 宗地代码
359 zddm: "",
360 bdcdyh: "",
361 qlxzmc: "",
362 qlrxx: [],
363 // 自然幢号
364 zrzh: "",
365 // 户不动产单元号
366 hbdcdyh: "",
367 djzt: "",
368 // 图幅丘幢号
369 tfqzh: "",
370 zl: "",
371 // 房屋用途
372 fwyt: "",
373 fwxz: "",
374 fwjg: "",
375 // 权利人信息
376 // 是否分别持证
377 sffbcz: "",
378 // 持证人
379 czr: "",
380 djyy: "",
381 // 规划用途名称
382 zdjbxx: {
383 ghytmc: "",
384 },
385 fdcq2: {
386 fwxzmc: "",
387 },
388 slsq: {
389 gyfs: "",
390 },
391 },
392 //传递参数
393 propsParam: {},
394 rules: {
395 'fdcq2.djyy': [
396 { required: true, message: '请输入登记原因', trigger: 'blur' }
397 ]
398 }
399 }
400 },
401 methods: {
402 /**
403 * @description: dataSelectClick
404 * @author: renchao
405 */
406 dataSelectClick () {
407 this.$popup(
408 "房屋所有权",
409 this.BASE_API.SERVERAPI + "/rest/workflow/main/dataCompare/slxxCompareDetai",
410 {
411 formData: {
412 bsmSldy: this.propsParam.bsmSldy,
413 qllx: this.propsParam.qllx,
414 },
415 }
416 );
417 },
418 /**
419 * @description: 更新土地用途信息
420 * @param {*} val
421 * @author: renchao
422 */
423 upDateTdytxxList (val) {
424 this.ruleForm.tdytqxList && (this.ruleForm.tdytqxList = _.cloneDeep(val));
425 this.key++;
426 },
427 /**
428 * @description: 是否持证人变化
429 * @param {*} val
430 * @author: renchao
431 */
432 updaterow () {
433 this.czr = "";
434 },
435 /**
436 * @description: 更新权利人信息
437 * @param {*} val
438 * @author: renchao
439 */
440 upDateQlrxxList (val) {
441 if (!_.isEqual(val, this.ruleForm.qlrList)) {
442 this.ruleForm.qlrList = _.cloneDeep(val);
443 this.czrOptions = this.ruleForm.qlrList;
444 }
445 this.num = 0
446 this.ruleForm.qlrList.forEach(item => {
447 if (item.id == this.czr) {
448 this.num++
449 }
450 })
451 if (this.num == 0) {
452 this.czr = ''
453 }
454 },
455 /**
456 * @description: 更新权利人信息
457 * @param {*} val
458 * @author: renchao
459 */
460 upDateYwrxxList (val) {
461 this.ruleForm.ywrList = _.cloneDeep(val);
462 },
463 /**
464 * @description: onSubmit
465 * @author: renchao
466 */
467 onSubmit () {
468 let that = this;
469 let arr = this.ruleForm.tdytqxList.filter((item) => !item.yt);
470 if (arr.length > 0) {
471 this.$message({
472 showClose: true,
473 message: "土地用途不能为空",
474 type: "error",
475 });
476 return false;
477 }
478 if (this.ruleForm.qlrList.length == 0) {
479 this.$message({
480 showClose: true,
481 message: "请确认权利人信息",
482 type: "error",
483 });
484 return false;
485 }
486
487 if (this.ruleForm.sldy.gyfs == "0") {
488 if (this.ruleForm.qlrList.length > 1) {
489 this.$message({
490 showClose: true,
491 message: "共有方式:单独所有,权利人只能是一个人",
492 type: "error",
493 });
494 return false;
495 }
496 this.ruleForm.qlrList[0].sfczr = "1";
497 } else {
498 if (this.ruleForm.qlrList.length <= 1) {
499 this.$message({
500 showClose: true,
501 message:
502 "共有方式:共同所有,按份所有,其他所有,权利人必须是两个以上",
503 type: "error",
504 });
505 return false;
506 }
507 //是否分别持证
508 if (this.ruleForm.sldy.sqfbcz == "1") {
509 //是
510 this.ruleForm.qlrList.forEach((item, index) => {
511 item.sfczr = "1";
512 });
513 } else {
514 if (that.czr === '') {
515 that.$message({
516 showClose: true,
517 message: "请选择持证人",
518 type: "error"
519 });
520 return false;
521 }
522 this.ruleForm.qlrList.forEach(item => {
523 if (item.id == that.czr) {
524 item.sfczr = "1"
525 } else {
526 item.sfczr = "0"
527 }
528 })
529 }
530 }
531 this.$refs['ruleForm'].validate((valid) => {
532 if (valid) {
533 that.$store.dispatch("user/refreshPage", false);
534 saveData(that.ruleForm).then((res) => {
535 if (res.code === 200) {
536 that.$message({
537 showClose: true,
538 message: "保存成功!",
539 type: "success",
540 });
541 that.$store.dispatch("user/refreshPage", true);
542 } else {
543 that.$message({
544 showClose: true,
545 message: res.message,
546 type: "error",
547 });
548 }
549 })
550
551 } else {
552 that.$message({
553 showClose: true,
554 message: "请输入登记原因",
555 type: "error"
556 })
557 return false
558 }
559 })
560 },
561 /**
562 * @description: compare
563 * @author: renchao
564 */
565 compare () {
566 this.$popupDialog(
567 this.ruleForm.qlxx.qllxmc,
568 "registerBook/comparison",
569 {
570 bsmQlxx: this.ruleForm.qlxx.bsmQlxx,
571 dqqllx: "FDCQ2",
572 },
573 "80%",
574 true
575 );
576 },
577 },
578 };
579 </script>
580 <style scoped lang="scss">
581 @import "~@/styles/public.scss";
582 @import "~@/styles/slxx/slxx.scss";
583 /deep/.el-form {
584 display: flex;
585 flex-direction: column;
586 height: calc(100vh - 130px);
587 }
588
589 /deep/.el-form-item__label {
590 padding: 0;
591 }
592
593 /deep/.el-radio {
594 margin-right: 10px;
595 }
596
597 /deep/.el-select {
598 width: 100%;
599 }
600
601 /deep/.el-form-item {
602 margin-bottom: 3px;
603 }
604
605 .marginBot0 {
606 margin-bottom: 0 !important;
607 }
608
609 .slxx {
610 box-sizing: border-box;
611 }
612
613 .slxx_con {
614 flex: 1;
615 height: 100%;
616 background-color: #ffffff;
617 overflow-y: auto;
618 padding-right: 3px;
619 overflow-x: hidden;
620 }
621
622 .submit_btn {
623 height: 50px;
624 }
625
626 .btn {
627 text-align: center;
628 padding-top: 10px;
629 height: 36px;
630 background-color: #ffffff;
631 padding: 5px 0;
632 }
633
634 .textArea {
635 /deep/.el-textarea__inner {
636 min-height: 90px !important;
637 }
638 }
639
640 /deep/.el-form-item__label {
641 padding-bottom: 0px;
642 }
643 </style>
...@@ -330,7 +330,7 @@ ...@@ -330,7 +330,7 @@
330 import ywmix from "@/views/ywbl/mixin/index"; 330 import ywmix from "@/views/ywbl/mixin/index";
331 import { Init, saveData } from "@/api/workflow/nydsyqFlow.js"; 331 import { Init, saveData } from "@/api/workflow/nydsyqFlow.js";
332 import qlrCommonTable from "@/views/workflow/components/qlrCommonTable"; 332 import qlrCommonTable from "@/views/workflow/components/qlrCommonTable";
333 import JtcyTable from "@/views/workflow/components/JtcyTable"; 333 import JtcyTable from "./JtcyTable";
334 export default { 334 export default {
335 mixins: [ywmix], 335 mixins: [ywmix],
336 mounted () { 336 mounted () {
......
...@@ -308,6 +308,7 @@ ...@@ -308,6 +308,7 @@
308 </el-col> 308 </el-col>
309 </el-row> 309 </el-row>
310 <qlrCommonTable 310 <qlrCommonTable
311 style="margin-bottom:3px"
311 :tableData="ruleForm.qlrList" 312 :tableData="ruleForm.qlrList"
312 @upDateQlrxxList="upDateQlrxxList" 313 @upDateQlrxxList="upDateQlrxxList"
313 :disabled="viewEdit" 314 :disabled="viewEdit"
......
...@@ -11,7 +11,7 @@ ...@@ -11,7 +11,7 @@
11 import { mapGetters } from 'vuex' 11 import { mapGetters } from 'vuex'
12 import { getSzRecordList } from "@/api/bdcqz.js"; 12 import { getSzRecordList } from "@/api/bdcqz.js";
13 import table from "@/utils/mixin/table"; 13 import table from "@/utils/mixin/table";
14 import { szxxdatas } from "../../javascript/szxxdata"; 14 import { szxxdatas } from "./szxxdata";
15 export default { 15 export default {
16 components: { 16 components: {
17 17
......
1 /* 1 /*
2 * @Description: 2 * @Description:
3 * @Autor: renchao 3 * @Autor: renchao
4 * @LastEditTime: 2024-02-02 09:06:20 4 * @LastEditTime: 2024-02-23 16:27:17
5 */ 5 */
6 import Vue from 'vue' 6 import Vue from 'vue'
7 import { getPrintTemplateByCode } from "@/api/print"; 7 import { getPrintTemplateByCode, getPrintAcceptance, getPrintReceiveSupplementalMaterials } from "@/api/print";
8 import { uploadUndo } from "@/api/clxx"; 8 import { uploadUndo } from "@/api/clxx";
9 import { getLodop } from "@/utils/LodopFuncs"; 9 import { getLodop } from "@/utils/LodopFuncs";
10 import adapter from "@/utils/sqs/adapter"; 10 import adapter from "@/utils/sqs/adapter";
...@@ -77,7 +77,7 @@ export default { ...@@ -77,7 +77,7 @@ export default {
77 */ 77 */
78 operation (item) { 78 operation (item) {
79 //按钮 B0:选择不动产单元 B1:流程图 B2:材料分屏 B3:材料导入 B4:登记簿 B5:证书预览 B6:打印申请书 B7:证书领取 B8:楼盘表 B9:登簿,B10:打印回执 ZSXG: 证书修改 79 //按钮 B0:选择不动产单元 B1:流程图 B2:材料分屏 B3:材料导入 B4:登记簿 B5:证书预览 B6:打印申请书 B7:证书领取 B8:楼盘表 B9:登簿,B10:打印回执 ZSXG: 证书修改
80 //操作按钮 登簿:record 转件:transfer 退回:back 退出:signout 80 //操作按钮 登簿:record 转件:transfer 退回:back 退出:signout 受理凭证 slpz
81 let that = this; 81 let that = this;
82 switch (item.value) { 82 switch (item.value) {
83 case "B0": 83 case "B0":
...@@ -195,7 +195,7 @@ export default { ...@@ -195,7 +195,7 @@ export default {
195 }); 195 });
196 break; 196 break;
197 case "stop": //终止按钮 197 case "stop": //终止按钮
198 this.$popupDialog("终止", "workflow/components/stop", { 198 this.$popupDialog("终止", "workflow/top/stop/index", {
199 bsmSlsq: this.bsmSlsq, 199 bsmSlsq: this.bsmSlsq,
200 bestepid: this.bestepid ? this.bestepid : '' 200 bestepid: this.bestepid ? this.bestepid : ''
201 }, '600px', true) 201 }, '600px', true)
...@@ -242,6 +242,86 @@ export default { ...@@ -242,6 +242,86 @@ export default {
242 case "B-HLGXSJ": 242 case "B-HLGXSJ":
243 this.$popupDialog("互联网数据共享", "sjgx/gbmhlgxsjgx/gbmhlgxsjgx", {}, '90%', true) 243 this.$popupDialog("互联网数据共享", "sjgx/gbmhlgxsjgx/gbmhlgxsjgx", {}, '90%', true)
244 break; 244 break;
245 // slpz 受理凭证
246 case "slpz":
247 getPrintTemplateByCode({ tmpno: 'bdcdjslpz' }).then(res => {
248 if (res.code === 200) {
249 getPrintAcceptance(this.currentSelectProps.bsmSldy).then(infoRes => {
250 if (infoRes.code === 200) {
251 if (infoRes.result.fileList && infoRes.result.fileList.length > 0) {
252 infoRes.result.fileList.forEach((it, index) => {
253 let key = index + 1
254 this.$set(infoRes.result, "file" + key, it.sjmc)
255 this.$set(infoRes.result, "file" + key + 'ys', it.ys)
256 })
257 }
258 let date = infoRes.result.sqrq
259 infoRes.result.sqnian = date.split(' ')[0].split('-')[0]
260 infoRes.result.sqyue = date.split(' ')[0].split('-')[1]
261 infoRes.result.sqri = date.split(' ')[0].split('-')[2]
262 console.log(infoRes.result)
263 let LODOP = getLodop(document.getElementById('LODOP_OB'), document.getElementById('LODOP_EM'));
264
265 // 装载第一个模板并设置数据
266 LODOP.ADD_PRINT_DATA("ProgramData", res.result.tmpcontent);
267 for (let key in infoRes.result) {
268 LODOP.SET_PRINT_STYLEA(key, "CONTENT", infoRes.result[key]);
269 }
270
271 // 进行预览
272 LODOP.PREVIEW();
273 } else {
274 this.$message.error(infoRes.message);
275 }
276 });
277 } else {
278 this.$message.error(res.message);
279 }
280 })
281 break;
282 // 补充材料通知书
283 case "bccltzs":
284 this.$popupDialog("补充材料通知书", "workflow/top/bcclml/index",
285 { bsmSlsq: this.$route.query.bsmSlsq, bsmSldy: this.currentSelectProps.bsmSldy },
286 '70%', true)
287 break;
288 // 获取补充材料接收凭证
289 case "slpz":
290 getPrintTemplateByCode({ tmpno: 'bdcdjslpz' }).then(res => {
291 if (res.code === 200) {
292 getPrintAcceptance(this.currentSelectProps.bsmSldy).then(infoRes => {
293 if (infoRes.code === 200) {
294 if (infoRes.result.fileList && infoRes.result.fileList.length > 0) {
295 infoRes.result.fileList.forEach((it, index) => {
296 let key = index + 1
297 this.$set(infoRes.result, "file" + key, it.sjmc)
298 this.$set(infoRes.result, "file" + key + 'ys', it.ys)
299 })
300 }
301 let date = infoRes.result.sqrq
302 infoRes.result.sqnian = date.split(' ')[0].split('-')[0]
303 infoRes.result.sqyue = date.split(' ')[0].split('-')[1]
304 infoRes.result.sqri = date.split(' ')[0].split('-')[2]
305 console.log(infoRes.result)
306 let LODOP = getLodop(document.getElementById('LODOP_OB'), document.getElementById('LODOP_EM'));
307
308 // 装载第一个模板并设置数据
309 LODOP.ADD_PRINT_DATA("ProgramData", res.result.tmpcontent);
310 for (let key in infoRes.result) {
311 LODOP.SET_PRINT_STYLEA(key, "CONTENT", infoRes.result[key]);
312 }
313
314 // 进行预览
315 LODOP.PREVIEW();
316 } else {
317 this.$message.error(infoRes.message);
318 }
319 });
320 } else {
321 this.$message.error(res.message);
322 }
323 })
324 break;
245 } 325 }
246 }, 326 },
247 /** 327 /**
......
1 <!--
2 * @Description:
3 * @Autor: renchao
4 * @LastEditTime: 2024-02-26 09:04:04
5 -->
6 <template>
7 <div class="clmlmx-box">
8 <lb-table :column="column" :key="key" row-key="bsmSj" ref="table" :heightNumSetting="true" :calcHeight="600"
9 :pagination="false" :data="tableData" @row-click="handleRowClick" @selection-change="handleSelectionChange">
10 </lb-table>
11 <div class="text-center">
12 <el-button @click="handleCancel">取消</el-button>
13 <el-button type="primary" @click="handleSubmit" :loading="loading">打印</el-button>
14 </div>
15 </div>
16 </template>
17 <script>
18 import Vue from 'vue'
19 import store from '@/store/index.js'
20 import { ywPopupCacel } from "@/utils/popup.js";
21 import { getLodop } from "@/utils/LodopFuncs";
22 import { updateClml, InitClml } from "@/api/clxx.js";
23 import { getPrintTemplateByCode, getPrintSupplementalMaterials } from "@/api/print";
24 export default {
25 props: {
26 formData: {
27 type: Object,
28 default: () => {
29 return {}
30 }
31 }
32 },
33 data () {
34 return {
35 selectList: [],
36 loading: false,
37 sortable: null,
38 column: [
39 {
40 type: 'selection',
41 label: '全选',
42 width: '50'
43 },
44 {
45 label: "材料名称",
46 render: (h, scope) => {
47 return (
48 (this.formData.ableOperation && scope.row.sfxjcl == '1') ?
49 <el-input value={scope.row.sjmc} onInput={(val) => { scope.row.sjmc = val }}></el-input> : <span>{scope.row.sjmc}</span>
50 )
51 }
52 },
53 {
54 label: "份数",
55 render: (h, scope) => {
56 if (scope.row.ys && scope.row.ys > 0) {
57 return (
58 <div>
59 <span>{scope.row.ys}</span>
60 </div>
61 );
62 } else {
63 return (
64 <div>
65 <span>0</span>
66 </div>
67 );
68 }
69 }
70 },
71 {
72 label: "材料类型",
73 render: (h, scope) => {
74 return (
75 this.formData.ableOperation ?
76 <el-select value={scope.row.sjlx}
77 onChange={(val) => { scope.row.sjlx = val }}>
78 {
79 store.getters.dictData['A40'].map(option => {
80 return (
81 <el-option label={option.dname} value={option.dcode}></el-option>
82 )
83 })
84 }
85 </el-select> : <span>{this.dicStatus(scope.row.sjlx, "A40")}</span>
86 )
87 }
88 }
89 ],
90 key: 0,
91 tableData: []
92 }
93 },
94 mounted () {
95 var formdata = new FormData();
96 formdata.append("bsmSlsq", this.formData.bsmSlsq ? this.formData.bsmSlsq : '');
97 formdata.append("bsmSldy", this.formData.bsmSldy ? this.formData.bsmSldy : '');
98 console.log(this.formData);
99 InitClml(formdata).then((res) => {
100 if (res.code == 200) {
101 if (res.result && res.result.length > 0) {
102 this.tableData = res.result
103 this.key++
104 }
105 } else {
106 this.$message.error(res.message);
107 }
108 })
109 },
110 beforeDestroy () {
111 if (this.sortable) {
112 this.sortable.destroy();
113 }
114 },
115 methods: {
116 handleSelectionChange (val) {
117 this.selectList = val
118 },
119 handleRowClick (row) {
120 let refs = 'table';
121 this.$refs[refs].toggleRowSelection(row)
122 },
123 handleCancel () {
124 ywPopupCacel()
125 },
126 handleSubmit () {
127 this.loading = true
128 if (this.selectList.length == 0) {
129 this.$message.error('请先选择材料目录')
130 return
131 }
132 getPrintTemplateByCode({ tmpno: 'bdcdjbccltts' }).then(res => {
133 if (res.code === 200) {
134 getPrintSupplementalMaterials(this.formData.bsmSldy, this.selectList).then(infoRes => {
135 this.loading = false
136 if (infoRes.code === 200) {
137 if (infoRes.result.fileList && infoRes.result.fileList.length > 0) {
138 infoRes.result.fileList.forEach((it, index) => {
139 let key = index + 1
140 this.$set(infoRes.result, "file" + key, it.sjmc)
141 this.$set(infoRes.result, "file" + key + 'ys', it.ys)
142 })
143 }
144 let date = infoRes.result.sqrq
145 infoRes.result.sqnian = date.split(' ')[0].split('-')[0]
146 infoRes.result.sqyue = date.split(' ')[0].split('-')[1]
147 infoRes.result.sqri = date.split(' ')[0].split('-')[2]
148 console.log(infoRes.result)
149 let LODOP = getLodop(document.getElementById('LODOP_OB'), document.getElementById('LODOP_EM'));
150
151 // 装载第一个模板并设置数据
152 LODOP.ADD_PRINT_DATA("ProgramData", res.result.tmpcontent);
153 for (let key in infoRes.result) {
154 LODOP.SET_PRINT_STYLEA(key, "CONTENT", infoRes.result[key]);
155 }
156
157 // 进行预览
158 LODOP.PREVIEW();
159 } else {
160 this.$message.error(infoRes.message);
161 }
162 }).catch(() => {
163 this.loading = false
164 })
165 } else {
166 this.loading = false
167 this.$message.error(res.message);
168 }
169 })
170 },
171 dicStatus (val, code) {
172 let data = store.getters.dictData[code],
173 name = '暂无'
174 if (data) {
175 data.map((item) => {
176 if (item.dcode == val) {
177 name = item.dname
178 }
179 })
180 return name
181 }
182 },
183 }
184 }
185 </script>
186 <style scoped lang='scss'>
187 @import "~@/styles/mixin.scss";
188 .clmlmx-box {
189 margin: 0 auto;
190 .title {
191 text-align: center;
192 height: 60px;
193 line-height: 60px;
194 border: 1px solid #dfe6ec;
195 font-size: 20px;
196 background: #81d3f81a;
197 margin-bottom: -1px;
198 }
199 }
200 </style>
1 <!--
2 * @Description:
3 * @Autor: miaofang
4 * @LastEditTime: 2023-07-19 09:52:42
5 -->
6 <template>
7 <div class="fm" id="boxaaa">
8 <div class="title">不动产登记簿</div>
9 <div class="title">(回执)</div>
10 <p class="bian">
11 编号: <span>{{ Receiptdata.sldyList[0].ybdcqzsh||"" }}</span>
12 </p>
13 <div class="texts">
14 <p class="jsjg">{{ Receiptdata.cfdjList[0].cfjg }}:</p>
15 <p class="concent">
16 <span>{{ sj }}</span> ,你院协助执行通知书订单号为:<font>{{
17 Receiptdata.qlxxList[0].ywh||""
18 }}</font
19 >收悉,具体执行情况如下。
20 </p>
21 </div>
22
23 <p class="bian">{{ Receiptdata.user.organizationName }}</p>
24 <p class="bian">{{ sj }}(盖章)</p>
25 <table class="xxTable">
26 <tr>
27 <td>序号</td>
28 <td>坐落</td>
29 <td>控制反馈</td>
30 <td>控制措施</td>
31 </tr>
32 <tr v-for="(item, index) in Receiptdata.sldyList" :key="index">
33 <td>{{ index + 1 }}</td>
34 <td>{{ item.zl }}</td>
35 <td>已控</td>
36 <td>{{ item.djlxmc }}</td>
37 </tr>
38 </table>
39 </div>
40 </template>
41
42
43 <script>
44 import { BatchInit } from "@/api/workflow/cfdjFlow.js";
45 export default {
46 props: {
47 Receiptdata: {
48 type: Object,
49 default: {},
50 },
51 },
52 data() {
53 return {
54 sj: "",
55 data:false
56 };
57 },
58 mounted() {
59 this.loadData();
60 },
61 watch: {
62 Receiptdata: {
63 handler(newValue, oldValue) {
64 this.$nextTick(() => {
65 this.Receiptdata = newValue;
66 this.loadData();
67 });
68 },
69 },
70 },
71 methods: {
72 openPrint () {
73 // 获取打印回执数据
74 var formdata = new FormData();
75 formdata.append("bsmSldy", this.currentSelectProps.bsmSldy);
76 formdata.append("bsmSlsq", this.$route.query.bsmSlsq);
77 formdata.append("djlx", this.currentSelectProps.djlx);
78 BatchInit(formdata).then((res) => {
79 if (res.code === 200 && res.result) {
80 this.Receiptdata = res.result
81 this.shows = true
82 setTimeout(() => {
83 this.prinsss()
84 }, 100)
85 } else {
86 this.$message.error(res.message)
87 }
88 })
89 },
90 /**
91 * @description: loadData
92 * @author: miaofang
93 */
94 loadData() {
95 let dateTime = new Date(this.Receiptdata.slsq.slsj);
96 let y = dateTime.getFullYear();
97 let m = dateTime.getMonth() + 1;
98 m = m < 10 ? "0" + m : m;
99 let d = dateTime.getDate();
100 d = d < 10 ? "0" + d : d;
101 let h = dateTime.getHours();
102 h = h < 10 ? "0" + h : h;
103 let M = dateTime.getMinutes();
104 M = M < 10 ? "0" + M : M;
105 let s = dateTime.getSeconds();
106 s = s < 10 ? "0" + s : s;
107 this.sj = y + "年" + m + "月" + d + "日";
108 },
109 },
110 };
111 </script>
112
113 <style lang="scss" scoped>
114 #boxaaa{
115 font {
116 border-bottom: 1px solid #000;
117 display: inline-block;
118 padding: 0 15px;
119 line-height: 16px;
120 }
121
122 .title {
123 height: 60px;
124 display: flex;
125 font-size: 32px;
126 color: #000;
127 justify-content: center;
128 align-items: center;
129 }
130 .bian {
131 text-align: right;
132 }
133 .texts{
134 margin-top: 40px;
135 margin-bottom: 40px;
136
137 }
138 .jsjg {
139 text-align: left;
140 }
141 .concent {
142 width: 100%;
143
144 line-height: 40px;
145 text-align: left;
146 text-indent: 2em;
147 }
148 p {
149 font-family: serif;
150 }
151 .xxTable {
152
153 width: 100%;
154 border-collapse: collapse;
155 font-family: serif;
156 margin-top: 20px;
157
158 tr td {
159 border: 1px solid #000;
160 text-align: center;
161 height: 40px;
162 line-height: 17px;
163 font-size: 13px;
164 min-width: 80px;
165 z-index: 1;
166 min-width: 80px;
167 padding: 5px;
168 }
169 }
170 }
171 .fm {
172 background: #fff;
173 font-size: 18px;
174 margin: auto;
175 }
176
177 </style>
...@@ -10,7 +10,7 @@ ...@@ -10,7 +10,7 @@
10 <!-- 左侧业务功能按钮 --> 10 <!-- 左侧业务功能按钮 -->
11 <ul> 11 <ul>
12 <li v-for="(item, index) in leftButtonList" :key="index"> 12 <li v-for="(item, index) in leftButtonList" :key="index">
13 <div v-if="item.value == 'B10'" @click="openPrint()"> 13 <div v-if="item.value == 'cfhzd'" @click="openPrint()">
14 <svg-icon class="icon" :icon-class="item.icon" /> 14 <svg-icon class="icon" :icon-class="item.icon" />
15 <span class="iconName">{{ item.name }}</span> 15 <span class="iconName">{{ item.name }}</span>
16 </div> 16 </div>
...@@ -117,17 +117,14 @@ ...@@ -117,17 +117,14 @@
117 import ordinaryMenu from "./components/leftmenu/ordinaryMenu.vue"; 117 import ordinaryMenu from "./components/leftmenu/ordinaryMenu.vue";
118 // 引入左侧菜单 118 // 引入左侧菜单
119 import segmentMenu from "./components/leftmenu/segmentMenu.vue"; 119 import segmentMenu from "./components/leftmenu/segmentMenu.vue";
120 // 回执单
121 import receipt from "./components/receipt.vue";
122 import selectBdc from "@/views/ywbl/ywsq/selectBdc.vue"; 120 import selectBdc from "@/views/ywbl/ywsq/selectBdc.vue";
123 import { BatchInit } from "@/api/workflow/cfdjFlow.js"; 121
124 export default { 122 export default {
125 components: { 123 components: {
126 selectBdc, 124 selectBdc,
127 NoticeBar, 125 NoticeBar,
128 ordinaryMenu, 126 ordinaryMenu,
129 segmentMenu, 127 segmentMenu
130 receipt,
131 }, 128 },
132 mixins: [WorkFlow, publicFlow], 129 mixins: [WorkFlow, publicFlow],
133 data () { 130 data () {
...@@ -176,24 +173,6 @@ ...@@ -176,24 +173,6 @@
176 window.removeEventListener("unload", (e) => this.unloadHandler(e)); 173 window.removeEventListener("unload", (e) => this.unloadHandler(e));
177 }, 174 },
178 methods: { 175 methods: {
179 openPrint () {
180 // 获取打印回执数据
181 var formdata = new FormData();
182 formdata.append("bsmSldy", this.currentSelectProps.bsmSldy);
183 formdata.append("bsmSlsq", this.$route.query.bsmSlsq);
184 formdata.append("djlx", this.currentSelectProps.djlx);
185 BatchInit(formdata).then((res) => {
186 if (res.code === 200 && res.result) {
187 this.Receiptdata = res.result
188 this.shows = true
189 setTimeout(() => {
190 this.prinsss()
191 }, 100)
192 } else {
193 this.$message.error(res.message)
194 }
195 })
196 },
197 prinsss () { 176 prinsss () {
198 printJS({ 177 printJS({
199 printable: "boxaaa", // // 文档来源:pdf或图像的url,html元素的id或json数据的对象 178 printable: "boxaaa", // // 文档来源:pdf或图像的url,html元素的id或json数据的对象
...@@ -236,6 +215,7 @@ ...@@ -236,6 +215,7 @@
236 unClaimTask(this.$route.query.bsmSlsq, this.bestepid ? this.bestepid : '') 215 unClaimTask(this.$route.query.bsmSlsq, this.bestepid ? this.bestepid : '')
237 } 216 }
238 }, 217 },
218 getPrintSlpz() {},
239 /** 219 /**
240 * @description: 申请单元点击事件 220 * @description: 申请单元点击事件
241 * @param {*} index 221 * @param {*} index
......
...@@ -15,10 +15,10 @@ class data extends filter { ...@@ -15,10 +15,10 @@ class data extends filter {
15 } 15 }
16 columns () { 16 columns () {
17 return [ 17 return [
18 { 18 // {
19 type: 'selection', 19 // type: 'selection',
20 label: '全选', 20 // label: '全选',
21 }, 21 // },
22 { 22 {
23 label: '序号', 23 label: '序号',
24 type: 'index', 24 type: 'index',
...@@ -32,6 +32,19 @@ class data extends filter { ...@@ -32,6 +32,19 @@ class data extends filter {
32 } 32 }
33 }, 33 },
34 { 34 {
35 prop: "bglx",
36 label: "变化情况",
37 minWidth: '80',
38 render: (h, scope) => {
39 switch (scope.row.bglx) {
40 case '1':
41 return <span>变更前</span>
42 case '2':
43 return <span>变更后</span>
44 }
45 }
46 },
47 {
35 prop: "status", 48 prop: "status",
36 label: "状态", 49 label: "状态",
37 width: '130', 50 width: '130',
......