Skip to content
Toggle navigation
Toggle navigation
This project
Loading...
Sign in
bdc
/
bdcdj-web
Go to a project
Toggle navigation
Toggle navigation pinning
Projects
Groups
Snippets
Help
Project
Activity
Repository
Pipelines
Graphs
Issues
0
Merge Requests
0
Wiki
Network
Create a new issue
Builds
Commits
Issue Boards
Files
Commits
Network
Compare
Branches
Tags
facecaf7
authored
2023-09-05 15:17:20 +0800
by
renchao@pashanhoo.com
Browse Files
Options
Browse Files
Tag
Download
Email Patches
Plain Diff
style:证书打印
1 parent
19b87257
Hide whitespace changes
Inline
Side-by-side
Showing
4 changed files
with
250 additions
and
211 deletions
src/api/bdcqz.js
src/views/workflow/components/dialog/zsdy.vue
src/views/workflow/components/szxx.vue
src/views/workflow/mixin/public.js
src/api/bdcqz.js
View file @
facecaf
/*
* @Description: 不动产权证
* @Autor: renchao
* @LastEditTime: 2023-0
5-16 14:04:18
* @LastEditTime: 2023-0
9-05 13:24:14
*/
import
request
from
'@/utils/request'
;
let
SERVER
=
window
.
config
?
window
.
config
:
JSON
.
parse
(
localStorage
.
getItem
(
'ApiUrl'
))
...
...
@@ -131,3 +131,13 @@ export function bdcqzPreview (data) {
responseType
:
'blob'
})
}
// 获取不动产权证详细信息
export
function
getBdcqzDetail
(
bsmBdcqz
)
{
return
request
({
url
:
SERVER
.
SERVERAPI
+
'/rest/ywbl/bdcqz/getBdcqzDetail'
,
method
:
'get'
,
params
:
{
bsmBdcqz
:
bsmBdcqz
}
})
}
\ No newline at end of file
...
...
src/views/workflow/components/dialog/zsdy.vue
View file @
facecaf
<!--
* @Description:
* @Autor: renchao
* @LastEditTime: 2023-0
8-30 17:33:06
* @LastEditTime: 2023-0
9-05 15:14:08
-->
<
template
>
<div>
...
...
@@ -12,19 +12,27 @@
ref=
"ruleForm"
label-width=
"120px"
>
<el-form-item
label=
"印刷序列号:"
prop=
"ysxlh"
>
<el-select
v-model=
"ruleForm.ysxlh"
placeholder=
"请选择"
>
<el-option
v-for=
"item in ysxlh"
:key=
"item.ysxlh"
:label=
"item.ysxlh"
:value=
"item.ysxlh"
>
</el-option>
</el-select>
<el-row>
<el-col
:span=
"22"
>
<el-select
v-model=
"ruleForm.ysxlh"
@
change=
"handleSelect"
:disabled=
"disabled"
placeholder=
"请选择"
>
<el-option
v-for=
"item in ysxlh"
:key=
"item.ysxlh"
:label=
"item.ysxlh"
:value=
"item.ysxlh"
>
</el-option>
</el-select>
</el-col>
<el-col
:span=
"2"
v-if=
"this.formData.ysxlh"
>
<el-button
type=
"primary"
@
click=
"invalidDiglog=true"
>
作废
</el-button>
</el-col>
</el-row>
</el-form-item>
</el-form>
<div
class=
"zs-content"
>
<canvas
ref=
"zs"
width=
"1000"
v-show=
"this.formData.bdcqz
.bdcqz
lx==1"
height=
"700"
></canvas>
<canvas
ref=
"zm"
width=
"1180"
v-show=
"this.formData.bdcqz
.bdcqz
lx==2"
height=
"780"
></canvas>
<canvas
ref=
"zs"
width=
"1000"
v-show=
"this.formData.bdcqzlx==1"
height=
"700"
></canvas>
<canvas
ref=
"zm"
width=
"1180"
v-show=
"this.formData.bdcqzlx==2"
height=
"780"
></canvas>
</div>
</div>
<!-- 打印模板需要此模块 -->
...
...
@@ -33,8 +41,24 @@
</object>
<div
class=
"text-center pt-10"
>
<el-button
@
click=
"$popupCacel"
>
取消
</el-button>
<el-button
type=
"primary"
@
click=
"handleSubmit"
>
确定
</el-button>
<el-button
type=
"primary"
@
click=
"handlePrint"
v-if=
"this.formData.ysxlh"
>
打印
</el-button>
<el-button
type=
"primary"
@
click=
"handleSubmit"
v-else
>
确定
</el-button>
</div>
<el-dialog
title=
"证书作废"
:visible
.
sync=
"invalidDiglog"
width=
"40%"
:modal-append-to-body=
"false"
top=
"30vh"
>
<div
class=
"invalid-diglog"
>
<div
class=
"invalid-title"
>
<i
class=
"el-icon-question invalid-icon"
></i>
<div
class=
"invalid-body"
>
您确定作废证书并再次打印?印刷序列号
{{
bdcqz
.
ysxlh
}}
</div>
</div>
<div
class=
"invalid-reson"
>
作废原因:
</div>
<el-input
v-model=
"zfyy"
placeholder=
"请输入作废原因"
type=
"textarea"
:rows=
"4"
></el-input>
<div
class=
"text-center pt-10"
>
<el-button
@
click=
"closeInvalidDiglog"
>
取 消
</el-button>
<el-button
type=
"primary"
@
click=
"confirmInvalid"
>
确 定
</el-button>
</div>
</div>
</el-dialog>
</div>
</
template
>
...
...
@@ -43,7 +67,7 @@
import
{
datas
}
from
"../../javascript/zsyl.js"
;
import
{
getPrintTemplateByCode
}
from
"@/api/print"
;
import
{
getLodop
}
from
"@/utils/LodopFuncs"
import
{
readYsxlh
,
certificate
,
get
SlsqBdcqzList
}
from
"@/api/bdcqz.js"
;
import
{
readYsxlh
,
certificate
,
get
BdcqzDetail
,
invalidCertificate
}
from
"@/api/bdcqz.js"
;
export
default
{
props
:
{
formData
:
{
...
...
@@ -55,18 +79,22 @@
},
data
()
{
return
{
// 详细信息
bdcqz
:
{},
key
:
0
,
disabled
:
false
,
// 不动产证书图片地址
imgSrc
:
require
(
'@/image/bdcqz/bdcqzs2.jpg'
),
bdczmSrc
:
require
(
'@/image/bdcqz/bdczm.jpg'
),
loading
:
false
,
bdcqz
:
[],
//印刷序列号集合
ysxlh
:
[],
//列名称对象
columns
:
[],
//tab选择绑定值
activeName
:
''
,
invalidDiglog
:
false
,
zfyy
:
""
,
ruleForm
:
{
bsmBdcqz
:
""
,
szmc
:
"不动产权证书"
,
...
...
@@ -85,24 +113,82 @@
store
.
dispatch
(
'user/refreshPage'
,
false
)
this
.
columns
=
datas
.
columns
()
this
.
ysxlhList
()
if
(
this
.
formData
.
bdcqz
.
bdcqzlx
==
1
)
{
this
.
drawTextOnImage
()
// 获取详细信息
this
.
getDetail
()
if
(
this
.
formData
.
ysxlh
)
{
this
.
disabled
=
true
}
else
{
this
.
d
rawTextzmImage
()
this
.
d
isabled
=
false
}
},
methods
:
{
/**
* @description: 获取详细信息
* @author: renchao
*/
getDetail
()
{
this
.
loading
=
true
getBdcqzDetail
(
this
.
formData
.
bsmBdcqz
).
then
(
res
=>
{
this
.
bdcqz
=
res
.
result
this
.
loading
=
false
if
(
this
.
bdcqz
.
ysxlh
)
this
.
ruleForm
.
ysxlh
=
this
.
bdcqz
.
ysxlh
if
(
this
.
bdcqz
.
bdcqzlx
==
1
)
{
this
.
drawTextOnImage
()
}
else
{
this
.
drawTextzmImage
()
}
})
},
/**
* @description: 获取印刷序列号列表
* @author: renchao
*/
ysxlhList
()
{
readYsxlh
({
zslx
:
this
.
formData
.
bdcqz
.
bdcqz
lx
}).
then
((
res
)
=>
{
readYsxlh
({
zslx
:
this
.
formData
.
bdcqzlx
}).
then
((
res
)
=>
{
if
(
res
.
code
===
200
)
{
this
.
ysxlh
=
res
.
result
;
}
})
},
handleSelect
(
val
)
{
this
.
bdcqz
.
ysxlh
=
this
.
ruleForm
.
ysxlh
if
(
this
.
bdcqz
.
bdcqzlx
==
1
)
{
this
.
drawTextOnImage
()
}
else
{
this
.
drawTextzmImage
()
}
},
/**
* @description: closeInvalidDiglog
* @author: renchao
*/
closeInvalidDiglog
()
{
this
.
zfyy
=
""
;
this
.
invalidDiglog
=
false
},
/**
* @description: 作废缮证信息
* @author: renchao
*/
confirmInvalid
()
{
invalidCertificate
({
bsmBdcqz
:
this
.
bdcqz
.
bsmBdcqz
,
zfyy
:
this
.
zfyy
}).
then
((
res
)
=>
{
if
(
res
.
code
===
200
)
{
this
.
$message
.
success
(
"作废成功"
);
this
.
disabled
=
false
this
.
invalidDiglog
=
false
;
this
.
zfyy
=
''
this
.
ruleForm
.
ysxlh
=
''
this
.
bdcqz
.
ysxlh
=
''
if
(
this
.
bdcqz
.
bdcqzlx
==
1
)
{
this
.
drawTextOnImage
()
}
else
{
this
.
drawTextzmImage
()
}
}
else
{
this
.
$message
.
error
(
res
.
message
);
}
})
},
/**
* @description: 不动产证书
* @author: renchao
...
...
@@ -128,25 +214,24 @@
context
.
drawImage
(
image
,
0
,
0
);
context
.
font
=
'16px 楷体'
;
context
.
fillStyle
=
'#000000'
;
context
.
fillText
(
this
.
formData
.
bdcqz
.
sjjc
?
this
.
formData
.
bdcqz
.
sjjc
:
''
,
60
,
56
);
context
.
fillText
(
this
.
formData
.
bdcqz
.
djnd
?
this
.
formData
.
bdcqz
.
djnd
:
''
,
113
,
56
);
context
.
fillText
(
this
.
formData
.
bdcqz
.
sxqc
?
this
.
formData
.
bdcqz
.
sxqc
:
''
,
180
,
56
);
context
.
fillText
(
this
.
formData
.
bdcqz
.
sxh
?
this
.
formData
.
bdcqz
.
sxh
:
''
,
370
,
56
);
context
.
fillText
(
this
.
formData
.
bdcqz
.
qlr
?
this
.
formData
.
bdcqz
.
qlr
:
''
,
129
,
97
);
context
.
fillText
(
this
.
formData
.
bdcqz
.
gyqk
?
this
.
formData
.
bdcqz
.
gyqk
:
''
,
129
,
136
);
context
.
fillText
(
this
.
bdcqz
.
sjjc
?
this
.
bdcqz
.
sjjc
:
''
,
60
,
56
);
context
.
fillText
(
this
.
bdcqz
.
djnd
?
this
.
bdcqz
.
djnd
:
''
,
113
,
56
);
context
.
fillText
(
this
.
bdcqz
.
sxqc
?
this
.
bdcqz
.
sxqc
:
''
,
180
,
56
);
context
.
fillText
(
this
.
bdcqz
.
sxh
?
this
.
bdcqz
.
sxh
:
''
,
370
,
56
);
context
.
fillText
(
this
.
bdcqz
.
qlr
?
this
.
bdcqz
.
qlr
:
''
,
129
,
97
);
context
.
fillText
(
this
.
bdcqz
.
gyqk
?
this
.
bdcqz
.
gyqk
:
''
,
129
,
136
);
this
.
bdcdyh
=
this
.
formData
.
bdcqz
.
bdcdyh
.
slice
(
0
,
6
)
+
' '
+
this
.
formData
.
bdcqz
.
bdcdyh
.
slice
(
6
,
12
)
+
' '
+
this
.
formData
.
bdcqz
.
bdcdyh
.
slice
(
12
,
19
)
+
' '
+
this
.
formData
.
bdcqz
.
bdcdyh
.
slice
(
19
,
this
.
formData
.
bdcqz
.
bdcdyh
.
length
)
this
.
bdcdyh
=
this
.
bdcqz
.
bdcdyh
.
slice
(
0
,
6
)
+
' '
+
this
.
bdcqz
.
bdcdyh
.
slice
(
6
,
12
)
+
' '
+
this
.
bdcqz
.
bdcdyh
.
slice
(
12
,
19
)
+
' '
+
this
.
bdcqz
.
bdcdyh
.
slice
(
19
,
this
.
bdcqz
.
bdcdyh
.
length
)
context
.
fillText
(
this
.
bdcdyh
?
this
.
bdcdyh
:
''
,
129
,
223
);
context
.
fillText
(
this
.
formData
.
bdcqz
.
qllx
?
this
.
formData
.
bdcqz
.
qllx
:
''
,
129
,
263
);
context
.
fillText
(
this
.
formData
.
bdcqz
.
qlxz
?
this
.
formData
.
bdcqz
.
qlxz
:
''
,
129
,
303
);
context
.
fillText
(
this
.
formData
.
bdcqz
.
yt
?
this
.
formData
.
bdcqz
.
yt
:
''
,
129
,
346
);
// context.fillText(this.formData.bdcqz.mj ? this.formData.bdcqz.mj : '', 129, 386);
let
lines6
=
this
.
formData
.
bdcqz
.
mj
?
this
.
formData
.
bdcqz
.
mj
.
split
(
' '
)
:
[];
if
(
getByteLen
(
this
.
formData
.
bdcqz
.
mj
)
>
41
)
{
context
.
fillText
(
this
.
bdcqz
.
qllx
?
this
.
bdcqz
.
qllx
:
''
,
129
,
263
);
context
.
fillText
(
this
.
bdcqz
.
qlxz
?
this
.
bdcqz
.
qlxz
:
''
,
129
,
303
);
context
.
fillText
(
this
.
bdcqz
.
yt
?
this
.
bdcqz
.
yt
:
''
,
129
,
346
);
let
lines6
=
this
.
bdcqz
.
mj
?
this
.
bdcqz
.
mj
.
split
(
' '
)
:
[];
if
(
getByteLen
(
this
.
bdcqz
.
mj
)
>
41
)
{
lines6
.
forEach
((
line
,
index
)
=>
{
const
y
=
378
+
(
index
*
27
);
// 每行文本的垂直位置
let
currentLine
=
''
;
...
...
@@ -189,7 +274,7 @@
}
// 权利其他状态
const
maxWidth
=
332
;
// 最大宽度限制
let
lines
=
this
.
formData
.
bdcqz
.
qlqtzk
?
this
.
formData
.
bdcqz
.
qlqtzk
.
split
(
'\n'
)
:
[];
let
lines
=
this
.
bdcqz
.
qlqtzk
?
this
.
bdcqz
.
qlqtzk
.
split
(
'\n'
)
:
[];
for
(
let
i
=
0
;
i
<
lines
.
length
;
i
++
)
{
let
num
=
Math
.
ceil
(
getByteLen
(
lines
[
i
])
/
41
)
if
(
getByteLen
(
lines
[
i
])
>
41
)
{
...
...
@@ -224,7 +309,7 @@
}
}
let
lines1
=
this
.
formData
.
bdcqz
.
fj
?
this
.
formData
.
bdcqz
.
fj
.
split
(
'\n'
)
:
[];
let
lines1
=
this
.
bdcqz
.
fj
?
this
.
bdcqz
.
fj
.
split
(
'\n'
)
:
[];
lines1
.
forEach
((
line
,
index
)
=>
{
const
y
=
100
+
(
index
*
30
);
// 每行文本的垂直位置
let
currentLine
=
''
;
...
...
@@ -244,8 +329,8 @@
context
.
fillText
(
line
,
580
,
y
+
(
index
*
30
));
// 调整行高
})
})
let
lines3
=
this
.
formData
.
bdcqz
.
syqx
?
this
.
formData
.
bdcqz
.
syqx
.
split
(
' '
)
:
[];
if
(
getByteLen
(
this
.
formData
.
bdcqz
.
syqx
)
>
41
)
{
let
lines3
=
this
.
bdcqz
.
syqx
?
this
.
bdcqz
.
syqx
.
split
(
' '
)
:
[];
if
(
getByteLen
(
this
.
bdcqz
.
syqx
)
>
41
)
{
lines3
.
forEach
((
line
,
index
)
=>
{
const
y
=
423
+
(
index
*
27
);
// 每行文本的垂直位置
let
currentLine
=
''
;
...
...
@@ -287,8 +372,8 @@
})
}
let
lines2
=
this
.
formData
.
bdcqz
.
zl
?
this
.
formData
.
bdcqz
.
zl
.
split
(
' '
)
:
[];
if
(
getByteLen
(
this
.
formData
.
bdcqz
.
zl
)
>
41
)
{
let
lines2
=
this
.
bdcqz
.
zl
?
this
.
bdcqz
.
zl
.
split
(
' '
)
:
[];
if
(
getByteLen
(
this
.
bdcqz
.
zl
)
>
41
)
{
lines2
.
forEach
((
line
,
index
)
=>
{
const
y
=
170
+
(
index
*
20
);
// 每行文本的垂直位置
let
currentLine
=
''
;
...
...
@@ -359,25 +444,24 @@
context
.
font
=
'16px 楷体'
;
context
.
fillStyle
=
'#000000'
;
// ysxlh
context
.
fillText
(
this
.
formData
.
bdcqz
.
ysxlh
?
this
.
formData
.
bdcqz
.
ysxlh
:
''
,
280
,
712
);
context
.
fillText
(
this
.
bdcqz
.
ysxlh
?
this
.
bdcqz
.
ysxlh
:
''
,
280
,
712
);
// djsj
if
(
this
.
formData
.
bdcqz
.
djsj
)
{
let
djsjList
=
this
.
formData
.
bdcqz
.
djsj
.
split
(
' '
)[
0
].
split
(
'/'
)
if
(
this
.
bdcqz
.
djsj
)
{
let
djsjList
=
this
.
bdcqz
.
djsj
.
split
(
' '
)[
0
].
split
(
'/'
)
context
.
fillText
(
djsjList
[
0
]
?
djsjList
[
0
]
:
''
,
327
,
580
);
context
.
fillText
(
djsjList
[
1
]
?
djsjList
[
1
]
:
''
,
393
,
580
);
context
.
fillText
(
djsjList
[
2
]
?
djsjList
[
2
]
:
''
,
443
,
580
);
}
context
.
fillText
(
this
.
formData
.
bdcqz
.
sjjc
?
this
.
formData
.
bdcqz
.
sjjc
:
''
,
620
,
125
);
context
.
fillText
(
this
.
formData
.
bdcqz
.
djnd
?
this
.
formData
.
bdcqz
.
djnd
:
''
,
665
,
125
);
context
.
fillText
(
this
.
formData
.
bdcqz
.
sxqc
?
this
.
formData
.
bdcqz
.
sxqc
:
''
,
750
,
125
);
context
.
fillText
(
this
.
formData
.
bdcqz
.
sxh
?
this
.
formData
.
bdcqz
.
sxh
:
''
,
960
,
123
);
context
.
fillText
(
this
.
formData
.
bdcqz
.
zmqlhsx
?
this
.
formData
.
bdcqz
.
zmqlhsx
:
''
,
775
,
180
);
context
.
fillText
(
this
.
formData
.
bdcqz
.
qlr
?
this
.
formData
.
bdcqz
.
qlr
:
''
,
775
,
228
);
context
.
fillText
(
this
.
bdcqz
.
sjjc
?
this
.
bdcqz
.
sjjc
:
''
,
620
,
125
);
context
.
fillText
(
this
.
bdcqz
.
djnd
?
this
.
bdcqz
.
djnd
:
''
,
665
,
125
);
context
.
fillText
(
this
.
bdcqz
.
sxqc
?
this
.
bdcqz
.
sxqc
:
''
,
750
,
125
);
context
.
fillText
(
this
.
bdcqz
.
sxh
?
this
.
bdcqz
.
sxh
:
''
,
960
,
123
);
context
.
fillText
(
this
.
bdcqz
.
zmqlhsx
?
this
.
bdcqz
.
zmqlhsx
:
''
,
775
,
180
);
context
.
fillText
(
this
.
bdcqz
.
qlr
?
this
.
bdcqz
.
qlr
:
''
,
775
,
228
);
// 义务人
context
.
fillText
(
this
.
formData
.
bdcqz
.
ywr
?
this
.
formData
.
bdcqz
.
ywr
:
''
,
775
,
275
);
// context.fillText(this.formData.bdcqz.zl ? this.formData.bdcqz.zl : '', 775, 325);
let
lines2
=
this
.
formData
.
bdcqz
.
zl
?
this
.
formData
.
bdcqz
.
zl
.
split
(
' '
)
:
[];
if
(
getByteLen
(
this
.
formData
.
bdcqz
.
zl
)
>
41
)
{
context
.
fillText
(
this
.
bdcqz
.
ywr
?
this
.
bdcqz
.
ywr
:
''
,
775
,
275
);
let
lines2
=
this
.
bdcqz
.
zl
?
this
.
bdcqz
.
zl
.
split
(
' '
)
:
[];
if
(
getByteLen
(
this
.
bdcqz
.
zl
)
>
41
)
{
lines2
.
forEach
((
line
,
index
)
=>
{
const
y
=
315
+
(
index
*
20
);
// 每行文本的垂直位置
let
currentLine
=
''
;
...
...
@@ -419,15 +503,15 @@
})
}
// bdcdyh
this
.
bdcdyh
=
this
.
formData
.
bdcqz
.
bdcdyh
.
slice
(
0
,
6
)
+
' '
+
this
.
formData
.
bdcqz
.
bdcdyh
.
slice
(
6
,
12
)
+
' '
+
this
.
formData
.
bdcqz
.
bdcdyh
.
slice
(
12
,
19
)
+
' '
+
this
.
formData
.
bdcqz
.
bdcdyh
.
slice
(
19
,
this
.
formData
.
bdcqz
.
bdcdyh
.
length
)
this
.
bdcdyh
=
this
.
bdcqz
.
bdcdyh
.
slice
(
0
,
6
)
+
' '
+
this
.
bdcqz
.
bdcdyh
.
slice
(
6
,
12
)
+
' '
+
this
.
bdcqz
.
bdcdyh
.
slice
(
12
,
19
)
+
' '
+
this
.
bdcqz
.
bdcdyh
.
slice
(
19
,
this
.
bdcqz
.
bdcdyh
.
length
)
context
.
fillText
(
this
.
bdcdyh
?
this
.
bdcdyh
:
''
,
775
,
373
);
// qlqtzk
const
maxWidth
=
29
5
;
// 最大宽度限制
let
lines
=
this
.
formData
.
bdcqz
.
qlqtzk
?
this
.
formData
.
bdcqz
.
qlqtzk
.
split
(
'\n'
)
:
[];
const
maxWidth
=
29
0
;
// 最大宽度限制
let
lines
=
this
.
bdcqz
.
qlqtzk
?
this
.
bdcqz
.
qlqtzk
.
split
(
'\n'
)
:
[];
for
(
let
i
=
0
;
i
<
lines
.
length
;
i
++
)
{
let
num
=
Math
.
ceil
(
getByteLen
(
lines
[
i
])
/
41
)
if
(
getByteLen
(
lines
[
i
])
>
41
)
{
let
num
=
Math
.
ceil
(
getByteLen
(
lines
[
i
])
/
37
)
if
(
getByteLen
(
lines
[
i
])
>
37
)
{
let
currentLine
=
''
;
let
arr
=
[];
for
(
let
word
of
lines
[
i
])
{
...
...
@@ -459,10 +543,10 @@
}
}
// fj
let
lines1
=
this
.
formData
.
bdcqz
.
fj
?
this
.
formData
.
bdcqz
.
fj
.
split
(
'\n'
)
:
[];
let
lines1
=
this
.
bdcqz
.
fj
?
this
.
bdcqz
.
fj
.
split
(
'\n'
)
:
[];
for
(
let
i
=
0
;
i
<
lines1
.
length
;
i
++
)
{
let
num
=
Math
.
ceil
(
getByteLen
(
lines1
[
i
])
/
41
)
if
(
getByteLen
(
lines1
[
i
])
>
41
)
{
let
num
=
Math
.
ceil
(
getByteLen
(
lines1
[
i
])
/
37
)
if
(
getByteLen
(
lines1
[
i
])
>
37
)
{
let
currentLine
=
''
;
let
arr
=
[];
for
(
let
word
of
lines1
[
i
])
{
...
...
@@ -494,74 +578,72 @@
}
}
}
image
.
src
=
this
.
bdczmSrc
;
},
/**
* @description: handleSubmit
* @author: renchao
*/
handleSubmit
()
{
this
.
savePrintRecord
()
// 打印
handlePrint
()
{
if
(
this
.
bdcqz
.
bdcqzlx
==
1
)
{
getPrintTemplateByCode
({
tmpno
:
'zsdy'
}).
then
(
resInfo
=>
{
if
(
resInfo
.
code
==
200
)
{
//打开模板设计
let
LODOP
=
getLodop
(
document
.
getElementById
(
'LODOP_OB'
),
document
.
getElementById
(
'LODOP_EM'
));
LODOP
.
ADD_PRINT_DATA
(
"ProgramData"
,
resInfo
.
result
.
tmpcontent
);
//装载模板
this
.
bdcqz
.
bdcdyh1
=
this
.
bdcqz
.
bdcdyh
.
slice
(
0
,
6
)
+
' '
+
this
.
bdcqz
.
bdcdyh
.
slice
(
6
,
12
)
+
' '
+
this
.
bdcqz
.
bdcdyh
.
slice
(
12
,
19
)
+
' '
+
this
.
bdcqz
.
bdcdyh
.
slice
(
19
,
this
.
bdcqz
.
bdcdyh
.
length
)
//todo 调取后端接口获取数据 循环set
for
(
let
key
in
this
.
bdcqz
)
{
LODOP
.
SET_PRINT_STYLEA
(
key
,
"CONTENT"
,
this
.
bdcqz
[
key
]);
}
LODOP
.
PREVIEW
();
}
else
{
this
.
$message
.
error
(
resInfo
.
message
)
}
})
}
else
{
getPrintTemplateByCode
({
tmpno
:
'zmdy'
}).
then
(
resInfo
=>
{
if
(
resInfo
.
code
==
200
)
{
//打开模板设计
let
LODOP
=
getLodop
(
document
.
getElementById
(
'LODOP_OB'
),
document
.
getElementById
(
'LODOP_EM'
));
LODOP
.
ADD_PRINT_DATA
(
"ProgramData"
,
resInfo
.
result
.
tmpcontent
);
//装载模板
// 年月日
this
.
bdcqz
.
nian
=
this
.
bdcqz
.
djsj
.
split
(
' '
)[
0
].
split
(
'/'
)[
0
]
this
.
bdcqz
.
yue
=
this
.
bdcqz
.
djsj
.
split
(
' '
)[
0
].
split
(
'/'
)[
1
]
this
.
bdcqz
.
ri
=
this
.
bdcqz
.
djsj
.
split
(
' '
)[
0
].
split
(
'/'
)[
1
]
this
.
bdcqz
.
bdcdyh1
=
this
.
bdcqz
.
bdcdyh
.
slice
(
0
,
6
)
+
' '
+
this
.
bdcqz
.
bdcdyh
.
slice
(
6
,
12
)
+
' '
+
this
.
bdcqz
.
bdcdyh
.
slice
(
12
,
19
)
+
' '
+
this
.
bdcqz
.
bdcdyh
.
slice
(
19
,
this
.
bdcqz
.
bdcdyh
.
length
)
//todo 调取后端接口获取数据 循环set
for
(
let
key
in
this
.
bdcqz
)
{
LODOP
.
SET_PRINT_STYLEA
(
key
,
"CONTENT"
,
this
.
bdcqz
[
key
]);
}
LODOP
.
PREVIEW
();
}
else
{
this
.
$message
.
error
(
resInfo
.
message
)
}
})
}
//刷新列表
store
.
dispatch
(
'user/reWorkFresh'
,
true
)
},
/**
* @description: 保存打印记录
* @author: renchao
*/
savePrintRecord
()
{
handleSubmit
()
{
let
that
=
this
this
.
ruleForm
.
bsmBdcqz
=
this
.
formData
.
bdcqz
.
bsmBdcqz
;
this
.
ruleForm
.
bdcqzlx
=
this
.
formData
.
bdcqz
.
bdcqzlx
;
this
.
ruleForm
.
szzh
=
this
.
formData
.
bdcqz
.
bdcqzh
;
if
(
this
.
ruleForm
.
ysxlh
==
''
)
{
this
.
$message
.
error
(
'请选择印刷序列号'
);
return
;
}
this
.
ruleForm
.
bsmBdcqz
=
this
.
bdcqz
.
bsmBdcqz
;
this
.
ruleForm
.
bdcqzlx
=
this
.
bdcqz
.
bdcqzlx
;
this
.
ruleForm
.
szzh
=
this
.
bdcqz
.
bdcqzh
;
this
.
bdcqz
.
ysxlh
=
this
.
ruleForm
.
ysxlh
certificate
(
this
.
ruleForm
).
then
((
res
)
=>
{
if
(
res
.
code
===
200
)
{
that
.
$popupCacel
()
if
(
this
.
formData
.
bdcqz
.
bdcqzlx
==
1
)
{
getPrintTemplateByCode
({
tmpno
:
'zsdy'
}).
then
(
res
=>
{
if
(
res
.
code
==
200
)
{
//打开模板设计
let
LODOP
=
getLodop
(
document
.
getElementById
(
'LODOP_OB'
),
document
.
getElementById
(
'LODOP_EM'
));
LODOP
.
ADD_PRINT_DATA
(
"ProgramData"
,
res
.
result
.
tmpcontent
);
//装载模板
this
.
formData
.
bdcqz
.
bdcdyh1
=
this
.
formData
.
bdcqz
.
bdcdyh
.
slice
(
0
,
6
)
+
' '
+
this
.
formData
.
bdcqz
.
bdcdyh
.
slice
(
6
,
12
)
+
' '
+
this
.
formData
.
bdcqz
.
bdcdyh
.
slice
(
12
,
19
)
+
' '
+
this
.
formData
.
bdcqz
.
bdcdyh
.
slice
(
19
,
this
.
formData
.
bdcqz
.
bdcdyh
.
length
)
//todo 调取后端接口获取数据 循环set
for
(
let
key
in
this
.
formData
.
bdcqz
)
{
LODOP
.
SET_PRINT_STYLEA
(
key
,
"CONTENT"
,
this
.
formData
.
bdcqz
[
key
]);
}
LODOP
.
PREVIEW
();
that
.
$popupCacel
()
}
else
{
this
.
$message
.
error
(
res
.
message
)
}
})
}
else
{
getPrintTemplateByCode
({
tmpno
:
'zmdy'
}).
then
(
res
=>
{
if
(
res
.
code
==
200
)
{
//打开模板设计
let
LODOP
=
getLodop
(
document
.
getElementById
(
'LODOP_OB'
),
document
.
getElementById
(
'LODOP_EM'
));
LODOP
.
ADD_PRINT_DATA
(
"ProgramData"
,
res
.
result
.
tmpcontent
);
//装载模板
// 年月日
this
.
formData
.
bdcqz
.
nian
=
this
.
formData
.
bdcqz
.
djsj
.
split
(
' '
)[
0
].
split
(
'/'
)[
0
]
this
.
formData
.
bdcqz
.
yue
=
this
.
formData
.
bdcqz
.
djsj
.
split
(
' '
)[
0
].
split
(
'/'
)[
1
]
this
.
formData
.
bdcqz
.
ri
=
this
.
formData
.
bdcqz
.
djsj
.
split
(
' '
)[
0
].
split
(
'/'
)[
1
]
this
.
formData
.
bdcqz
.
bdcdyh1
=
this
.
formData
.
bdcqz
.
bdcdyh
.
slice
(
0
,
6
)
+
' '
+
this
.
formData
.
bdcqz
.
bdcdyh
.
slice
(
6
,
12
)
+
' '
+
this
.
formData
.
bdcqz
.
bdcdyh
.
slice
(
12
,
19
)
+
' '
+
this
.
formData
.
bdcqz
.
bdcdyh
.
slice
(
19
,
this
.
formData
.
bdcqz
.
bdcdyh
.
length
)
//todo 调取后端接口获取数据 循环set
for
(
let
key
in
this
.
formData
.
bdcqz
)
{
LODOP
.
SET_PRINT_STYLEA
(
key
,
"CONTENT"
,
this
.
formData
.
bdcqz
[
key
]);
}
LODOP
.
PREVIEW
();
that
.
$popupCacel
()
}
else
{
this
.
$message
.
error
(
res
.
message
)
}
})
}
//刷新列表
store
.
dispatch
(
'user/reWorkFresh'
,
true
)
this
.
handlePrint
()
}
else
{
this
.
$message
.
error
(
res
.
message
)
}
...
...
@@ -579,4 +661,36 @@
.zs-content
{
text-align
:
center
;
}
.invalid-diglog
{
padding-bottom
:
20px
;
font-size
:
16px
;
font-weight
:
bold
;
color
:
rgb
(
99
,
99
,
99
);
.invalid-title
{
display
:
flex
;
align-content
:
center
;
.invalid-icon
{
color
:
rgb
(
254
,
148
,
0
);
font-size
:
34px
;
margin-right
:
10px
;
}
.invalid-body
{
line-height
:
40px
;
margin-bottom
:
10px
;
}
}
.invalid-reson
{
margin-bottom
:
10px
;
}
.dialog-footer
{
margin-top
:
10px
;
display
:
flex
;
justify-content
:
flex-end
;
}
}
</
style
>
...
...
src/views/workflow/components/szxx.vue
View file @
facecaf
<!--
* @Description:
* @Autor: renchao
* @LastEditTime: 2023-09-0
4 17:12:0
5
* @LastEditTime: 2023-09-0
5 14:28:2
5
-->
<
template
>
<div
class=
"szxx"
>
...
...
@@ -55,28 +55,14 @@
</div>
</div>
</el-card>
<el-dialog
title=
"证书作废"
:visible
.
sync=
"invalidDiglog"
width=
"30%"
:modal-append-to-body=
"false"
top=
"30vh"
>
<div
class=
"invalid-diglog"
>
<div
class=
"invalid-title"
>
<i
class=
"el-icon-question invalid-icon"
></i>
<div
class=
"invalid-body"
>
您确定作废证书并再次打印?印刷序列号
{{
ysxlh
}}
</div>
</div>
<div
class=
"invalid-reson"
>
作废原因:
</div>
<el-input
v-model=
"zfyy"
placeholder=
"请输入作废原因"
type=
"textarea"
:rows=
"4"
></el-input>
<div
class=
"text-center pt-10"
>
<el-button
@
click=
"closeInvalidDiglog"
>
取 消
</el-button>
<el-button
type=
"primary"
@
click=
"confirmInvalid"
>
确 定
</el-button>
</div>
</div>
</el-dialog>
<el-empty
description=
"暂无数据"
v-if=
"tableData.length == 0"
></el-empty>
</div>
</
template
>
<
script
>
import
{
mapGetters
}
from
'vuex'
import
store
from
'@/store/index.js'
import
{
getPrintTemplateByCode
}
from
"@/api/print"
;
import
{
getSlsqBdcqzList
,
invalidCertificate
}
from
"@/api/bdcqz.js"
;
import
{
getSlsqBdcqzList
}
from
"@/api/bdcqz.js"
;
export
default
{
props
:
{},
data
()
{
...
...
@@ -86,13 +72,8 @@
dialog
:
false
,
tableData
:
[],
bdcqzlx
:
1
,
bdcqz
:
{},
zfyy
:
""
,
invalidDiglog
:
false
,
bsmSz
:
""
,
bsmBdcqz
:
""
,
ysxlh
:
""
};
bdcqz
:
{}
}
},
computed
:
{
...
mapGetters
([
'workFresh'
])
...
...
@@ -135,12 +116,11 @@
*/
openZsylDialog
(
item
,
type
)
{
store
.
dispatch
(
'user/reWorkFresh'
,
false
)
if
(
type
==
1
)
{
//证书证明预览
this
.
$popupDialog
(
"证书证明预览"
,
"workflow/components/dialog/zsyl"
,
{
bdcqz
:
item
,
bsmSlsq
:
this
.
$route
.
query
.
bsmSlsq
},
"76%"
,
true
);
}
else
{
this
.
$popupDialog
(
"证书证明打印"
,
"workflow/components/dialog/zsdy"
,
{
bdcqz
:
item
,
bsmSlsq
:
this
.
$route
.
query
.
bsmSlsq
},
"76%"
,
true
);
this
.
$popupDialog
(
"证书证明打印"
,
"workflow/components/dialog/zsdy"
,
{
...
item
},
"76%"
,
true
);
}
},
/**
...
...
@@ -149,38 +129,7 @@
* @author: renchao
*/
openInvalidDiglog
(
item
)
{
this
.
bdcqz
=
item
this
.
ysxlh
=
item
.
ysxlh
this
.
bsmSz
=
item
.
bsmSz
;
this
.
invalidDiglog
=
true
;
this
.
bsmBdcqz
=
item
.
bsmBdcqz
},
/**
* @description: closeInvalidDiglog
* @author: renchao
*/
closeInvalidDiglog
()
{
this
.
invalidDiglog
=
false
;
this
.
bsmSz
=
""
;
this
.
zfyy
=
""
;
},
/**
* @description: 作废缮证信息
* @author: renchao
*/
confirmInvalid
()
{
invalidCertificate
({
bsmBdcqz
:
this
.
bsmBdcqz
,
zfyy
:
this
.
zfyy
}).
then
(
async
(
res
)
=>
{
if
(
res
.
code
===
200
)
{
this
.
list
();
this
.
$message
.
success
(
"作废成功"
);
this
.
invalidDiglog
=
false
;
this
.
zfyy
=
''
let
res
=
await
this
.
list
()
if
(
res
&&
res
==
200
)
this
.
openZsylDialog
(
this
.
bdcqz
);
}
else
{
this
.
$message
.
error
(
res
.
message
);
}
})
this
.
$popupDialog
(
"证书证明打印"
,
"workflow/components/dialog/zsdy"
,
{
...
item
},
"76%"
,
true
);
},
/**
* @description: openRecordPop
...
...
@@ -263,39 +212,6 @@
padding-top
:
8px
;
font-size
:
16px
;
}
.invalid-diglog
{
padding-bottom
:
20px
;
font-size
:
16px
;
font-weight
:
bold
;
color
:
rgb
(
99
,
99
,
99
);
.invalid-title
{
display
:
flex
;
align-content
:
center
;
.invalid-icon
{
color
:
rgb
(
254
,
148
,
0
);
font-size
:
34px
;
margin-right
:
10px
;
}
.invalid-body
{
line-height
:
40px
;
margin-bottom
:
10px
;
}
}
.invalid-reson
{
margin-bottom
:
10px
;
}
.dialog-footer
{
margin-top
:
10px
;
display
:
flex
;
justify-content
:
flex-end
;
}
}
.box-card
{
.szxx_header
{
color
:
#303133
;
...
...
src/views/workflow/mixin/public.js
View file @
facecaf
/*
* @Description:
* @Autor: renchao
* @LastEditTime: 2023-0
7-11 13:59:14
* @LastEditTime: 2023-0
9-05 15:05:56
*/
import
{
getForm
}
from
"../flowform"
;
import
{
getHomeNoticeList
}
from
"@/api/home.js"
...
...
@@ -49,7 +49,6 @@ export default {
* @author: renchao
*/
getFromRouter
(
tabname
)
{
console
.
log
(
tabname
,
'tabnametabnametabnametabnametabname'
);
//根据tabname获取选中的表单 此操作为了获取后端返回的表单对象,使用里面的是否可操作的属性
for
(
let
item
of
this
.
tabList
)
{
if
(
item
.
value
===
tabname
)
{
...
...
Please
register
or
sign in
to post a comment