fix
This commit is contained in:
parent
cc77824dc9
commit
aee3851c90
@ -44,6 +44,7 @@
|
|||||||
"mitt": "^3.0.1",
|
"mitt": "^3.0.1",
|
||||||
"nprogress": "^0.2.0",
|
"nprogress": "^0.2.0",
|
||||||
"pinia": "^2.1.7",
|
"pinia": "^2.1.7",
|
||||||
|
"print-js": "^1.6.0",
|
||||||
"tippy.js": "^6.3.7",
|
"tippy.js": "^6.3.7",
|
||||||
"vue": "^3.5.5",
|
"vue": "^3.5.5",
|
||||||
"vue-cropper": "^1.1.1",
|
"vue-cropper": "^1.1.1",
|
||||||
|
303
public/print.css
Normal file
303
public/print.css
Normal file
@ -0,0 +1,303 @@
|
|||||||
|
/* stylelint-disable */
|
||||||
|
html,
|
||||||
|
body {
|
||||||
|
width: 100%;
|
||||||
|
height: 100%;
|
||||||
|
}
|
||||||
|
|
||||||
|
input::-ms-clear,
|
||||||
|
input::-ms-reveal {
|
||||||
|
display: none;
|
||||||
|
}
|
||||||
|
|
||||||
|
*,
|
||||||
|
*::before,
|
||||||
|
*::after {
|
||||||
|
box-sizing: border-box;
|
||||||
|
}
|
||||||
|
|
||||||
|
html {
|
||||||
|
font-family: sans-serif;
|
||||||
|
line-height: 1.15;
|
||||||
|
-webkit-text-size-adjust: 100%;
|
||||||
|
-ms-text-size-adjust: 100%;
|
||||||
|
-ms-overflow-style: scrollbar;
|
||||||
|
-webkit-tap-highlight-color: rgba(0, 0, 0, 0);
|
||||||
|
}
|
||||||
|
|
||||||
|
@-ms-viewport {
|
||||||
|
width: device-width;
|
||||||
|
}
|
||||||
|
|
||||||
|
body {
|
||||||
|
margin: 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
[tabindex='-1']:focus {
|
||||||
|
outline: none;
|
||||||
|
}
|
||||||
|
|
||||||
|
hr {
|
||||||
|
box-sizing: content-box;
|
||||||
|
height: 0;
|
||||||
|
overflow: visible;
|
||||||
|
}
|
||||||
|
|
||||||
|
h1,
|
||||||
|
h2,
|
||||||
|
h3,
|
||||||
|
h4,
|
||||||
|
h5,
|
||||||
|
h6 {
|
||||||
|
margin-top: 0;
|
||||||
|
margin-bottom: 0.5em;
|
||||||
|
font-weight: 500;
|
||||||
|
}
|
||||||
|
|
||||||
|
p {
|
||||||
|
margin-top: 0;
|
||||||
|
margin-bottom: 1em;
|
||||||
|
}
|
||||||
|
|
||||||
|
abbr[title],
|
||||||
|
abbr[data-original-title] {
|
||||||
|
-webkit-text-decoration: underline dotted;
|
||||||
|
text-decoration: underline;
|
||||||
|
text-decoration: underline dotted;
|
||||||
|
border-bottom: 0;
|
||||||
|
cursor: help;
|
||||||
|
}
|
||||||
|
|
||||||
|
address {
|
||||||
|
margin-bottom: 1em;
|
||||||
|
font-style: normal;
|
||||||
|
line-height: inherit;
|
||||||
|
}
|
||||||
|
|
||||||
|
input[type='text'],
|
||||||
|
input[type='password'],
|
||||||
|
input[type='number'],
|
||||||
|
textarea {
|
||||||
|
-webkit-appearance: none;
|
||||||
|
}
|
||||||
|
|
||||||
|
ol,
|
||||||
|
ul,
|
||||||
|
dl {
|
||||||
|
margin-top: 0;
|
||||||
|
margin-bottom: 1em;
|
||||||
|
}
|
||||||
|
|
||||||
|
ol ol,
|
||||||
|
ul ul,
|
||||||
|
ol ul,
|
||||||
|
ul ol {
|
||||||
|
margin-bottom: 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
dt {
|
||||||
|
font-weight: 500;
|
||||||
|
}
|
||||||
|
|
||||||
|
dd {
|
||||||
|
margin-bottom: 0.5em;
|
||||||
|
margin-left: 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
blockquote {
|
||||||
|
margin: 0 0 1em;
|
||||||
|
}
|
||||||
|
|
||||||
|
dfn {
|
||||||
|
font-style: italic;
|
||||||
|
}
|
||||||
|
|
||||||
|
b,
|
||||||
|
strong {
|
||||||
|
font-weight: bolder;
|
||||||
|
}
|
||||||
|
|
||||||
|
small {
|
||||||
|
font-size: 80%;
|
||||||
|
}
|
||||||
|
|
||||||
|
sub,
|
||||||
|
sup {
|
||||||
|
position: relative;
|
||||||
|
font-size: 75%;
|
||||||
|
line-height: 0;
|
||||||
|
vertical-align: baseline;
|
||||||
|
}
|
||||||
|
|
||||||
|
sub {
|
||||||
|
bottom: -0.25em;
|
||||||
|
}
|
||||||
|
|
||||||
|
sup {
|
||||||
|
top: -0.5em;
|
||||||
|
}
|
||||||
|
|
||||||
|
pre,
|
||||||
|
code,
|
||||||
|
kbd,
|
||||||
|
samp {
|
||||||
|
font-size: 1em;
|
||||||
|
font-family: 'SFMono-Regular', Consolas, 'Liberation Mono', Menlo, Courier, monospace;
|
||||||
|
}
|
||||||
|
|
||||||
|
pre {
|
||||||
|
margin-top: 0;
|
||||||
|
margin-bottom: 1em;
|
||||||
|
overflow: auto;
|
||||||
|
}
|
||||||
|
|
||||||
|
figure {
|
||||||
|
margin: 0 0 1em;
|
||||||
|
}
|
||||||
|
|
||||||
|
img {
|
||||||
|
vertical-align: middle;
|
||||||
|
border-style: none;
|
||||||
|
}
|
||||||
|
|
||||||
|
a,
|
||||||
|
area,
|
||||||
|
button,
|
||||||
|
[role='button'],
|
||||||
|
input:not([type='range']),
|
||||||
|
label,
|
||||||
|
select,
|
||||||
|
summary,
|
||||||
|
textarea {
|
||||||
|
touch-action: manipulation;
|
||||||
|
}
|
||||||
|
|
||||||
|
table {
|
||||||
|
border-collapse: collapse;
|
||||||
|
}
|
||||||
|
|
||||||
|
caption {
|
||||||
|
padding-top: 0.75em;
|
||||||
|
padding-bottom: 0.3em;
|
||||||
|
text-align: left;
|
||||||
|
caption-side: bottom;
|
||||||
|
}
|
||||||
|
|
||||||
|
input,
|
||||||
|
button,
|
||||||
|
select,
|
||||||
|
optgroup,
|
||||||
|
textarea {
|
||||||
|
margin: 0;
|
||||||
|
color: inherit;
|
||||||
|
font-size: inherit;
|
||||||
|
font-family: inherit;
|
||||||
|
line-height: inherit;
|
||||||
|
}
|
||||||
|
|
||||||
|
button,
|
||||||
|
input {
|
||||||
|
overflow: visible;
|
||||||
|
}
|
||||||
|
|
||||||
|
button,
|
||||||
|
select {
|
||||||
|
text-transform: none;
|
||||||
|
}
|
||||||
|
|
||||||
|
button,
|
||||||
|
html [type='button'],
|
||||||
|
[type='reset'],
|
||||||
|
[type='submit'] {
|
||||||
|
-webkit-appearance: button;
|
||||||
|
}
|
||||||
|
|
||||||
|
button::-moz-focus-inner,
|
||||||
|
[type='button']::-moz-focus-inner,
|
||||||
|
[type='reset']::-moz-focus-inner,
|
||||||
|
[type='submit']::-moz-focus-inner {
|
||||||
|
padding: 0;
|
||||||
|
border-style: none;
|
||||||
|
}
|
||||||
|
|
||||||
|
input[type='radio'],
|
||||||
|
input[type='checkbox'] {
|
||||||
|
box-sizing: border-box;
|
||||||
|
padding: 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
input[type='date'],
|
||||||
|
input[type='time'],
|
||||||
|
input[type='datetime-local'],
|
||||||
|
input[type='month'] {
|
||||||
|
-webkit-appearance: listbox;
|
||||||
|
}
|
||||||
|
|
||||||
|
textarea {
|
||||||
|
overflow: auto;
|
||||||
|
resize: vertical;
|
||||||
|
}
|
||||||
|
|
||||||
|
fieldset {
|
||||||
|
min-width: 0;
|
||||||
|
margin: 0;
|
||||||
|
padding: 0;
|
||||||
|
border: 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
legend {
|
||||||
|
display: block;
|
||||||
|
width: 100%;
|
||||||
|
max-width: 100%;
|
||||||
|
margin-bottom: 0.5em;
|
||||||
|
padding: 0;
|
||||||
|
color: inherit;
|
||||||
|
font-size: 1.5em;
|
||||||
|
line-height: inherit;
|
||||||
|
white-space: normal;
|
||||||
|
}
|
||||||
|
|
||||||
|
progress {
|
||||||
|
vertical-align: baseline;
|
||||||
|
}
|
||||||
|
|
||||||
|
[type='number']::-webkit-inner-spin-button,
|
||||||
|
[type='number']::-webkit-outer-spin-button {
|
||||||
|
height: auto;
|
||||||
|
}
|
||||||
|
|
||||||
|
[type='search'] {
|
||||||
|
outline-offset: -2px;
|
||||||
|
-webkit-appearance: none;
|
||||||
|
}
|
||||||
|
|
||||||
|
[type='search']::-webkit-search-cancel-button,
|
||||||
|
[type='search']::-webkit-search-decoration {
|
||||||
|
-webkit-appearance: none;
|
||||||
|
}
|
||||||
|
|
||||||
|
::-webkit-file-upload-button {
|
||||||
|
font: inherit;
|
||||||
|
-webkit-appearance: button;
|
||||||
|
}
|
||||||
|
|
||||||
|
output {
|
||||||
|
display: inline-block;
|
||||||
|
}
|
||||||
|
|
||||||
|
summary {
|
||||||
|
display: list-item;
|
||||||
|
}
|
||||||
|
|
||||||
|
template {
|
||||||
|
display: none;
|
||||||
|
}
|
||||||
|
|
||||||
|
[hidden] {
|
||||||
|
display: none !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
mark {
|
||||||
|
padding: 0.2em;
|
||||||
|
background-color: #feffe6;
|
||||||
|
}
|
@ -1,237 +0,0 @@
|
|||||||
<template>
|
|
||||||
<el-drawer
|
|
||||||
v-model="isShow"
|
|
||||||
size="50%"
|
|
||||||
:append-to-body="true"
|
|
||||||
:destroy-on-close="true"
|
|
||||||
@close="closeHandle"
|
|
||||||
:close-on-press-escape="false"
|
|
||||||
:close-on-click-modal="false"
|
|
||||||
:show-close="false"
|
|
||||||
>
|
|
||||||
<template #header="{ close, titleId, titleClass }">
|
|
||||||
<h4 :id="titleId" :class="titleClass">{{ title }}</h4>
|
|
||||||
</template>
|
|
||||||
<el-form :model="form" label-width="auto" label-position="right" ref="formRef" :rules="rules" v-loading="loading">
|
|
||||||
<el-row :gutter="20">
|
|
||||||
<el-col :span="12">
|
|
||||||
<el-form-item label="上访人" required prop="name">
|
|
||||||
<el-input v-model="form.name" :disabled="form.name !== ''" placeholder="请输入案件名称"/>
|
|
||||||
</el-form-item>
|
|
||||||
</el-col>
|
|
||||||
<el-col :span="12">
|
|
||||||
<el-form-item label="电话" required prop="Tel">
|
|
||||||
<el-input v-model="form.Tel" placeholder="请输入上访人电话"/>
|
|
||||||
</el-form-item>
|
|
||||||
</el-col>
|
|
||||||
<el-col :span="12">
|
|
||||||
<el-form-item label="身份证号" required prop="idcard">
|
|
||||||
<el-input v-model="form.idcard" placeholder="请输入身份证号"/>
|
|
||||||
</el-form-item>
|
|
||||||
</el-col>
|
|
||||||
<el-col :span="12">
|
|
||||||
<el-form-item label="工作单位">
|
|
||||||
<el-input v-model="form.danwei" placeholder="请输入案件名称"/>
|
|
||||||
</el-form-item>
|
|
||||||
</el-col>
|
|
||||||
<el-col :span="12">
|
|
||||||
<el-form-item label="家庭地址">
|
|
||||||
<el-input v-model="form.address" placeholder="请输入案件名称"/>
|
|
||||||
</el-form-item>
|
|
||||||
</el-col>
|
|
||||||
<el-col :span="12">
|
|
||||||
<el-form-item label="重点人员" required prop="name">
|
|
||||||
<el-radio-group v-model="form.radio">
|
|
||||||
<el-radio-button label="是" value="yes" />
|
|
||||||
<el-radio-button label="否" value="no" />
|
|
||||||
</el-radio-group>
|
|
||||||
</el-form-item>
|
|
||||||
</el-col>
|
|
||||||
<el-col :span="12">
|
|
||||||
<el-form-item label="来访类型" required prop="name">
|
|
||||||
<el-select v-model="form.casetype" clearable>
|
|
||||||
<el-option
|
|
||||||
v-for="item in nj_anjian_type"
|
|
||||||
:key="item.value"
|
|
||||||
:label="item.label"
|
|
||||||
:value="item.value"
|
|
||||||
/>
|
|
||||||
</el-select>
|
|
||||||
</el-form-item>
|
|
||||||
</el-col>
|
|
||||||
<el-col :span="12">
|
|
||||||
<el-form-item label="级别" required prop="name">
|
|
||||||
<el-select v-model="form.level" clearable>
|
|
||||||
<el-option
|
|
||||||
v-for="item in nj_anjian_type"
|
|
||||||
:key="item.value"
|
|
||||||
:label="item.label"
|
|
||||||
:value="item.value"
|
|
||||||
/>
|
|
||||||
</el-select>
|
|
||||||
</el-form-item>
|
|
||||||
</el-col>
|
|
||||||
<el-col :span="12">
|
|
||||||
<el-form-item label="相关领域" required prop="name">
|
|
||||||
<el-select v-model="form.fields" clearable>
|
|
||||||
<el-option
|
|
||||||
v-for="item in nj_anjian_type"
|
|
||||||
:key="item.value"
|
|
||||||
:label="item.label"
|
|
||||||
:value="item.value"
|
|
||||||
/>
|
|
||||||
</el-select>
|
|
||||||
</el-form-item>
|
|
||||||
</el-col>
|
|
||||||
<el-col :span="12">
|
|
||||||
<el-form-item label="答复形式" required prop="name">
|
|
||||||
<el-select v-model="form.ResponseFormat" clearable>
|
|
||||||
<el-option
|
|
||||||
v-for="item in nj_anjian_type"
|
|
||||||
:key="item.value"
|
|
||||||
:label="item.label"
|
|
||||||
:value="item.value"
|
|
||||||
/>
|
|
||||||
</el-select>
|
|
||||||
</el-form-item>
|
|
||||||
</el-col>
|
|
||||||
<el-col :span="12">
|
|
||||||
<el-form-item label="反映事项" required prop="ReflectionMatters">
|
|
||||||
<el-input
|
|
||||||
v-model="form.ReflectionMatters"
|
|
||||||
:rows="3"
|
|
||||||
type="textarea"
|
|
||||||
:autosize="false"
|
|
||||||
resize="none"
|
|
||||||
placeholder="请输入来访人员反映事项"
|
|
||||||
/>
|
|
||||||
</el-form-item>
|
|
||||||
</el-col>
|
|
||||||
<el-col :span="12">
|
|
||||||
<el-form-item label="处理情况" required prop="HandlingSituation">
|
|
||||||
<el-input
|
|
||||||
v-model="form.HandlingSituation"
|
|
||||||
:rows="3"
|
|
||||||
type="textarea"
|
|
||||||
:autosize="false"
|
|
||||||
resize="none"
|
|
||||||
placeholder="请输入处理情况"
|
|
||||||
/>
|
|
||||||
</el-form-item>
|
|
||||||
</el-col>
|
|
||||||
<el-divider></el-divider> <!-- 普通分割线 -->
|
|
||||||
<el-col :span="24">
|
|
||||||
<p class="mt-2 mb-2" style="color:#1388F5;font-weight: bold">历史来访信息</p>
|
|
||||||
</el-col>
|
|
||||||
<el-col :span="24" style="width:100%">
|
|
||||||
<!-- 表格区域 两种方式。一种弹框显示,一种是下拉显示 -->
|
|
||||||
<!-- <AddEditRegistVisitTable ref="AddEditRegistVisitTableRef" /> -->
|
|
||||||
<collapseTbale ref="collapseRef" />
|
|
||||||
</el-col>
|
|
||||||
</el-row>
|
|
||||||
</el-form>
|
|
||||||
<template #footer>
|
|
||||||
<el-button type="primary" @click="submitHandle">提交</el-button>
|
|
||||||
<el-button @click="isShow = false">关闭</el-button>
|
|
||||||
</template>
|
|
||||||
</el-drawer>
|
|
||||||
</template>
|
|
||||||
|
|
||||||
<script setup>
|
|
||||||
import {getCurrentInstance} from "vue";
|
|
||||||
const {proxy} = getCurrentInstance()
|
|
||||||
|
|
||||||
import AddEditRegistVisitTable from "./AddEditRegistVisitTable.vue"; // 引入上传组件
|
|
||||||
import collapseTbale from "./collapseTbale.vue"; // 引入上传组件
|
|
||||||
|
|
||||||
import {validateIdCard,validatePhoneNumber} from "@/validate/validateIdCard.js";
|
|
||||||
|
|
||||||
const {nj_anjian_type,nj_anjian_status } = proxy.useDict('nj_anjian_type','nj_anjian_status')
|
|
||||||
|
|
||||||
// 是否显示抽屉
|
|
||||||
const isShow = ref(false)
|
|
||||||
const loading = ref(false)
|
|
||||||
// 抽屉标题
|
|
||||||
const title = ref('')
|
|
||||||
const rules = {
|
|
||||||
name: [{ required: true, message: "案件名称不能为空", trigger: "blur" }],
|
|
||||||
// 手机号
|
|
||||||
Tel: [
|
|
||||||
{required: true, message: '请填写手机号', trigger: 'blur'},
|
|
||||||
{validator: validatePhoneNumber, trigger: 'blur'}
|
|
||||||
],
|
|
||||||
// 身份证
|
|
||||||
idcard: [
|
|
||||||
{required: true, message: '请填写身份证号', trigger: 'blur'},
|
|
||||||
{validator: validateIdCard, trigger: 'blur'}
|
|
||||||
],
|
|
||||||
casetype: [{ required: true, message: "来访类型不能为空", trigger: "blur" }],
|
|
||||||
level: [{ required: true, message: "级别不能为空", trigger: "blur" }],
|
|
||||||
fields: [{ required: true, message: "相关领域不能为空", trigger: "change" }],
|
|
||||||
ResponseFormat: [{ required: true, message: "答复形式不能为空", trigger: "change" }],
|
|
||||||
ReflectionMatters: [{ required: true, message: "反映事项不能为空", trigger: "change" }],
|
|
||||||
HandlingSituation: [{ required: true, message: "处理情况不能为空", trigger: "change" }],
|
|
||||||
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
const isAdd = ref(false)
|
|
||||||
const form = ref({
|
|
||||||
name:'哈哈哈',
|
|
||||||
radio:'no'
|
|
||||||
})
|
|
||||||
// 通知事件
|
|
||||||
const emit = defineEmits(['getList'])
|
|
||||||
|
|
||||||
const changeShowStatus = () => {
|
|
||||||
isShow.value = !isShow.value
|
|
||||||
}
|
|
||||||
|
|
||||||
onMounted(() => {
|
|
||||||
|
|
||||||
})
|
|
||||||
|
|
||||||
|
|
||||||
const showAddCase = () => {
|
|
||||||
title.value = '来访登记';
|
|
||||||
isAdd.value = true
|
|
||||||
changeShowStatus()
|
|
||||||
}
|
|
||||||
const showEditCase = async (data) => {
|
|
||||||
title.value = '修改案件信息'
|
|
||||||
changeShowStatus()
|
|
||||||
}
|
|
||||||
|
|
||||||
defineExpose({showAddCase,showEditCase})
|
|
||||||
|
|
||||||
const submitHandle = async () => {
|
|
||||||
proxy.$refs["formRef"].validate(valid => {
|
|
||||||
if (valid) {
|
|
||||||
// if (form.value['caseCaseinfoId']) {
|
|
||||||
// editCaseInfo(form.value).then(res => {
|
|
||||||
// changeShowStatus()
|
|
||||||
// emit('getList', '来了老弟')
|
|
||||||
// })
|
|
||||||
// } else {
|
|
||||||
// createCaseInfo(form.value).then(res => {
|
|
||||||
// changeShowStatus()
|
|
||||||
// emit('getList', '来了老弟')
|
|
||||||
// })
|
|
||||||
// }
|
|
||||||
}
|
|
||||||
});
|
|
||||||
}
|
|
||||||
|
|
||||||
// 关闭后的回调事件
|
|
||||||
const closeHandle = () => {
|
|
||||||
console.log(123123)
|
|
||||||
emit('getList','123')
|
|
||||||
}
|
|
||||||
</script>
|
|
||||||
|
|
||||||
<style lang="scss" scoped>
|
|
||||||
h4{margin:0;}
|
|
||||||
.el-divider--horizontal{margin:0}
|
|
||||||
:deep().el-descriptions__label{width:15%}
|
|
||||||
:deep().el-descriptions__content{width:35%}
|
|
||||||
</style>
|
|
@ -1,85 +0,0 @@
|
|||||||
<template>
|
|
||||||
<el-table
|
|
||||||
ref="CaseTableRef"
|
|
||||||
v-loading="loading"
|
|
||||||
:data="CaseTables"
|
|
||||||
show-overflow-tooltip
|
|
||||||
>
|
|
||||||
<el-table-column label="时间" prop="name" />
|
|
||||||
<el-table-column label="单位" prop="unitname" />
|
|
||||||
<el-table-column label="接待人" prop="casetype" />
|
|
||||||
<el-table-column label="答复形式" prop="unitname" />
|
|
||||||
<el-table-column label="级别" prop="state">
|
|
||||||
<template #default="scope">
|
|
||||||
<dict-tag :options="nj_anjian_status" :value="scope.row.state" />
|
|
||||||
</template>
|
|
||||||
</el-table-column>
|
|
||||||
<el-table-column label="反映事项" prop="depname"/>
|
|
||||||
<el-table-column label="处理情况" prop="depname"/>
|
|
||||||
<el-table-column fixed="right" align="center" label="操作" width="80">
|
|
||||||
<template #default="scope">
|
|
||||||
<el-button link size="small" type="warning" @click="VisitingHistoryInfoRef.showEditCase(scope.row)">
|
|
||||||
<el-icon class="me-1">
|
|
||||||
<Edit />
|
|
||||||
</el-icon>
|
|
||||||
详情
|
|
||||||
</el-button>
|
|
||||||
</template>
|
|
||||||
</el-table-column>
|
|
||||||
</el-table>
|
|
||||||
<!-- 分页组件 -->
|
|
||||||
<pagination
|
|
||||||
v-show="total > 0"
|
|
||||||
:total="total"
|
|
||||||
v-model:page="paging.pageNum"
|
|
||||||
v-model:limit="paging.pageSize"
|
|
||||||
@pagination="getLists"
|
|
||||||
/>
|
|
||||||
<VisitingHistoryInfo ref="VisitingHistoryInfoRef" />
|
|
||||||
</template>
|
|
||||||
<script setup>
|
|
||||||
import {getCurrentInstance} from "vue";
|
|
||||||
const {proxy} = getCurrentInstance()
|
|
||||||
import PageEnum from "@/enum/PageEnum.js";
|
|
||||||
import VisitingHistoryInfo from "./VisitingHistoryInfo.vue";
|
|
||||||
const {nj_anjian_type,nj_anjian_status } = proxy.useDict('nj_anjian_type','nj_anjian_status')
|
|
||||||
const loading = ref(false);
|
|
||||||
|
|
||||||
const VisitingHistoryInfoRef = ref();
|
|
||||||
|
|
||||||
const paging = ref({
|
|
||||||
pageNum: 1,
|
|
||||||
pageSize: PageEnum.SIZE,
|
|
||||||
});
|
|
||||||
const queryParams = ref({
|
|
||||||
name: "",
|
|
||||||
casecode: "",
|
|
||||||
brief: "",
|
|
||||||
state: "1,2",
|
|
||||||
});
|
|
||||||
|
|
||||||
const total = ref(0);
|
|
||||||
const CaseTables = ref([
|
|
||||||
{
|
|
||||||
name: "1",
|
|
||||||
depname:'啊啊后阿达说的啊啊后阿达说的阿萨德啊啊后阿达说的阿萨德啊啊后阿达说的阿萨德啊啊后阿达说的阿萨德阿萨德'
|
|
||||||
},
|
|
||||||
{
|
|
||||||
name: "2",
|
|
||||||
},
|
|
||||||
]);
|
|
||||||
// 获取案件列表
|
|
||||||
const getLists = async () => {
|
|
||||||
// loading.value = true
|
|
||||||
// await getCaseInfoList(queryParams.value, paging.value).then(res => {
|
|
||||||
// CaseTables.value = res.rows
|
|
||||||
// total.value = res.total
|
|
||||||
// loading.value = false
|
|
||||||
// })
|
|
||||||
};
|
|
||||||
|
|
||||||
// 获取案件列表
|
|
||||||
const GetInfo = async (row) => {
|
|
||||||
console.log(row)
|
|
||||||
};
|
|
||||||
</script>
|
|
@ -60,6 +60,51 @@
|
|||||||
<el-input placeholder="请填写上访人工作单位或住址" v-model="queryParams.visitorContact"/>
|
<el-input placeholder="请填写上访人工作单位或住址" v-model="queryParams.visitorContact"/>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-col>
|
</el-col>
|
||||||
|
<el-col :span="12">
|
||||||
|
<el-form-item label="性别">
|
||||||
|
<el-select
|
||||||
|
v-model="queryParams.visitorSex"
|
||||||
|
placeholder="请选择性别"
|
||||||
|
>
|
||||||
|
<el-option
|
||||||
|
v-for="item in sys_user_sex"
|
||||||
|
:label="item.label"
|
||||||
|
:value="item.value"
|
||||||
|
:key="item.label"
|
||||||
|
/>
|
||||||
|
</el-select>
|
||||||
|
</el-form-item>
|
||||||
|
</el-col>
|
||||||
|
<el-col :span="12">
|
||||||
|
<el-form-item label="学历">
|
||||||
|
<el-select
|
||||||
|
v-model="queryParams.visitorDegree"
|
||||||
|
placeholder="请选择学历"
|
||||||
|
>
|
||||||
|
<el-option
|
||||||
|
v-for="item in people_degree"
|
||||||
|
:label="item.label"
|
||||||
|
:value="item.value"
|
||||||
|
:key="item.label"
|
||||||
|
/>
|
||||||
|
</el-select>
|
||||||
|
</el-form-item>
|
||||||
|
</el-col>
|
||||||
|
<el-col :span="12">
|
||||||
|
<el-form-item label="来源">
|
||||||
|
<el-input placeholder="请填写来源" v-model="queryParams.source"/>
|
||||||
|
</el-form-item>
|
||||||
|
</el-col>
|
||||||
|
<el-col :span="12">
|
||||||
|
<el-form-item label="年龄">
|
||||||
|
<el-input placeholder="请填写年龄" type="number" :min="1" v-model="queryParams.visitorAge"/>
|
||||||
|
</el-form-item>
|
||||||
|
</el-col>
|
||||||
|
<el-col :span="24">
|
||||||
|
<el-form-item label="联系住址">
|
||||||
|
<el-input placeholder="请填写联系住址" v-model="queryParams.visitorAddress"/>
|
||||||
|
</el-form-item>
|
||||||
|
</el-col>
|
||||||
<el-col :span="24">
|
<el-col :span="24">
|
||||||
<el-row :gutter="24">
|
<el-row :gutter="24">
|
||||||
<el-col :span="19">
|
<el-col :span="19">
|
||||||
@ -213,7 +258,9 @@ const {
|
|||||||
visit_reply_type,
|
visit_reply_type,
|
||||||
visit_field,
|
visit_field,
|
||||||
visit_type,
|
visit_type,
|
||||||
} = proxy.useDict('boolean_yes_no', 'visit_level', 'visit_field', 'visit_type', 'visit_reply_type')
|
sys_user_sex,
|
||||||
|
people_degree
|
||||||
|
} = proxy.useDict('boolean_yes_no', 'visit_level', 'visit_field', 'visit_type', 'visit_reply_type', 'sys_user_sex', 'people_degree')
|
||||||
|
|
||||||
const emit = defineEmits(['refresh'])
|
const emit = defineEmits(['refresh'])
|
||||||
|
|
||||||
@ -254,7 +301,17 @@ const defaultParams = {
|
|||||||
// 是否重点人员
|
// 是否重点人员
|
||||||
isKeyPerson: '1',
|
isKeyPerson: '1',
|
||||||
// 级别
|
// 级别
|
||||||
level: ''
|
level: '',
|
||||||
|
// 性别
|
||||||
|
visitorSex: '',
|
||||||
|
// 学历
|
||||||
|
visitorDegree: '',
|
||||||
|
// 来源
|
||||||
|
source: '',
|
||||||
|
// 年龄
|
||||||
|
visitorAge: '',
|
||||||
|
// 地址
|
||||||
|
visitorAddress: ''
|
||||||
}
|
}
|
||||||
const queryParams = ref({...defaultParams})
|
const queryParams = ref({...defaultParams})
|
||||||
const registerList = ref([])
|
const registerList = ref([])
|
||||||
|
@ -1,123 +0,0 @@
|
|||||||
<template>
|
|
||||||
<el-drawer
|
|
||||||
v-model="isShow"
|
|
||||||
size="40%"
|
|
||||||
:destroy-on-close="true"
|
|
||||||
@close="closeHandle"
|
|
||||||
:show-close="false"
|
|
||||||
>
|
|
||||||
<!-- :direction="'ltr'" 在左侧打开 -->
|
|
||||||
<template #header="{ close, titleId, titleClass }">
|
|
||||||
<h4 :id="titleId" :class="titleClass">{{ title }}</h4>
|
|
||||||
</template>
|
|
||||||
<el-form :model="form" label-width="auto" label-position="right" ref="formRef" v-loading="loading">
|
|
||||||
<el-row :gutter="20">
|
|
||||||
<el-col :span="12">
|
|
||||||
<el-form-item label="时间">
|
|
||||||
<el-input v-model="form.name" readonly="true"/>
|
|
||||||
</el-form-item>
|
|
||||||
</el-col>
|
|
||||||
<el-col :span="12">
|
|
||||||
<el-form-item label="单位">
|
|
||||||
<el-input v-model="form.Tel" readonly="true"/>
|
|
||||||
</el-form-item>
|
|
||||||
</el-col>
|
|
||||||
<el-col :span="12">
|
|
||||||
<el-form-item label="接待人">
|
|
||||||
<el-input v-model="form.idcard" readonly="true"/>
|
|
||||||
</el-form-item>
|
|
||||||
</el-col>
|
|
||||||
<el-col :span="12">
|
|
||||||
<el-form-item label="答复形式">
|
|
||||||
<el-input v-model="form.danwei" readonly="true"/>
|
|
||||||
</el-form-item>
|
|
||||||
</el-col>
|
|
||||||
<el-col :span="12">
|
|
||||||
<el-form-item label="级别">
|
|
||||||
<el-input v-model="form.address" readonly="true"/>
|
|
||||||
</el-form-item>
|
|
||||||
</el-col>
|
|
||||||
<el-col :span="12">
|
|
||||||
|
|
||||||
</el-col>
|
|
||||||
<el-col :span="12">
|
|
||||||
<el-form-item label="反映事项">
|
|
||||||
<el-input
|
|
||||||
v-model="form.ReflectionMatters"
|
|
||||||
:rows="6"
|
|
||||||
type="textarea"
|
|
||||||
:autosize="false"
|
|
||||||
resize="none"
|
|
||||||
placeholder=""
|
|
||||||
readonly="true"
|
|
||||||
/>
|
|
||||||
</el-form-item>
|
|
||||||
</el-col>
|
|
||||||
<el-col :span="12">
|
|
||||||
<el-form-item label="处理情况">
|
|
||||||
<el-input
|
|
||||||
v-model="form.HandlingSituation"
|
|
||||||
:rows="6"
|
|
||||||
type="textarea"
|
|
||||||
:autosize="false"
|
|
||||||
resize="none"
|
|
||||||
placeholder=""
|
|
||||||
readonly="true"
|
|
||||||
/>
|
|
||||||
</el-form-item>
|
|
||||||
</el-col>
|
|
||||||
</el-row>
|
|
||||||
</el-form>
|
|
||||||
<template #footer>
|
|
||||||
<el-button @click="isShow = false">关闭</el-button>
|
|
||||||
</template>
|
|
||||||
</el-drawer>
|
|
||||||
</template>
|
|
||||||
|
|
||||||
<script setup>
|
|
||||||
import {getCurrentInstance} from "vue";
|
|
||||||
const {proxy} = getCurrentInstance()
|
|
||||||
|
|
||||||
const {nj_anjian_type,nj_anjian_status } = proxy.useDict('nj_anjian_type','nj_anjian_status')
|
|
||||||
|
|
||||||
// 是否显示抽屉
|
|
||||||
const isShow = ref(false)
|
|
||||||
const loading = ref(false)
|
|
||||||
|
|
||||||
// 抽屉标题
|
|
||||||
const title = ref('')
|
|
||||||
|
|
||||||
const form = ref({
|
|
||||||
name:'2024-12-12',
|
|
||||||
})
|
|
||||||
// 通知事件
|
|
||||||
const emit = defineEmits(['getList'])
|
|
||||||
|
|
||||||
const changeShowStatus = () => {
|
|
||||||
isShow.value = !isShow.value
|
|
||||||
}
|
|
||||||
|
|
||||||
onMounted(() => {
|
|
||||||
|
|
||||||
})
|
|
||||||
|
|
||||||
const showEditCase = async (data) => {
|
|
||||||
title.value = '来访历史详情'
|
|
||||||
changeShowStatus()
|
|
||||||
}
|
|
||||||
|
|
||||||
defineExpose({showEditCase})
|
|
||||||
|
|
||||||
// 关闭后的回调事件
|
|
||||||
const closeHandle = () => {
|
|
||||||
console.log(123123)
|
|
||||||
emit('getList','123')
|
|
||||||
}
|
|
||||||
</script>
|
|
||||||
|
|
||||||
<style lang="scss" scoped>
|
|
||||||
h4{margin:0;}
|
|
||||||
.el-divider--horizontal{margin:0}
|
|
||||||
:deep().el-descriptions__label{width:15%}
|
|
||||||
:deep().el-descriptions__content{width:35%}
|
|
||||||
</style>
|
|
@ -1,102 +0,0 @@
|
|||||||
<template>
|
|
||||||
<el-collapse accordion >
|
|
||||||
<el-collapse-item v-for="(item, index) in CaseTables" :key="index" :name="String(index + 1)" >
|
|
||||||
<template #title>
|
|
||||||
<el-row style="width:100%;text-align: left;font-size: 16px;" :gutter="20">
|
|
||||||
<el-col :span="5">日期:{{ item.date }}</el-col>
|
|
||||||
<el-col :span="7" style="overflow: hidden; text-overflow: ellipsis; white-space: nowrap;">
|
|
||||||
<el-tooltip content="昆山市人昆山市人民检察院民检察院" placement="top">
|
|
||||||
<span>单位:昆山市人民检察院</span>
|
|
||||||
</el-tooltip>
|
|
||||||
</el-col>
|
|
||||||
<el-col :span="5">接待人:张毅{{ item.name }}</el-col>
|
|
||||||
<el-col :span="4">答复形式:</el-col>
|
|
||||||
<el-col :span="3">级别:L0</el-col>
|
|
||||||
</el-row>
|
|
||||||
</template>
|
|
||||||
<div>
|
|
||||||
<el-form :model="form" class="mt-3" label-width="80px" label-position="right" ref="formRef" v-loading="loading">
|
|
||||||
<el-row :gutter="20">
|
|
||||||
<el-col :span="12">
|
|
||||||
<el-form-item label="时间">
|
|
||||||
<el-input v-model="form.name" :readonly="readonly" />
|
|
||||||
</el-form-item>
|
|
||||||
</el-col>
|
|
||||||
<el-col :span="12">
|
|
||||||
<el-form-item label="单位">
|
|
||||||
<el-input v-model="form.Tel" :readonly="readonly" />
|
|
||||||
</el-form-item>
|
|
||||||
</el-col>
|
|
||||||
<el-col :span="12">
|
|
||||||
<el-form-item label="接待人">
|
|
||||||
<el-input v-model="form.idcard" :readonly="readonly" />
|
|
||||||
</el-form-item>
|
|
||||||
</el-col>
|
|
||||||
<el-col :span="12">
|
|
||||||
<el-form-item label="答复形式">
|
|
||||||
<el-input v-model="form.danwei" :readonly="readonly" />
|
|
||||||
</el-form-item>
|
|
||||||
</el-col>
|
|
||||||
<el-col :span="12">
|
|
||||||
<el-form-item label="级别">
|
|
||||||
<el-input v-model="form.address" :readonly="readonly"/>
|
|
||||||
</el-form-item>
|
|
||||||
</el-col>
|
|
||||||
<el-col :span="12">
|
|
||||||
|
|
||||||
</el-col>
|
|
||||||
<el-col :span="12">
|
|
||||||
<el-form-item label="反映事项">
|
|
||||||
<el-input
|
|
||||||
v-model="form.ReflectionMatters"
|
|
||||||
:rows="6"
|
|
||||||
type="textarea"
|
|
||||||
:autosize="false"
|
|
||||||
resize="none"
|
|
||||||
placeholder=""
|
|
||||||
:readonly="readonly"
|
|
||||||
/>
|
|
||||||
</el-form-item>
|
|
||||||
</el-col>
|
|
||||||
<el-col :span="12">
|
|
||||||
<el-form-item label="处理情况">
|
|
||||||
<el-input
|
|
||||||
v-model="form.HandlingSituation"
|
|
||||||
:rows="6"
|
|
||||||
type="textarea"
|
|
||||||
:autosize="false"
|
|
||||||
resize="none"
|
|
||||||
placeholder=""
|
|
||||||
:readonly="readonly"
|
|
||||||
/>
|
|
||||||
</el-form-item>
|
|
||||||
</el-col>
|
|
||||||
</el-row>
|
|
||||||
</el-form>
|
|
||||||
</div>
|
|
||||||
</el-collapse-item>
|
|
||||||
</el-collapse>
|
|
||||||
</template>
|
|
||||||
<script setup>
|
|
||||||
import {getCurrentInstance} from "vue";
|
|
||||||
const {proxy} = getCurrentInstance()
|
|
||||||
|
|
||||||
const loading = ref(false)
|
|
||||||
const readonly = ref(true)
|
|
||||||
|
|
||||||
const form = ref({
|
|
||||||
name:'哈哈哈',
|
|
||||||
radio:'no'
|
|
||||||
})
|
|
||||||
const CaseTables = ref([
|
|
||||||
{
|
|
||||||
date:'2020-12-12',
|
|
||||||
name: "1",
|
|
||||||
depname:'啊啊后阿达说的啊啊后阿达说的阿萨德啊啊后阿达说的阿萨德啊啊后阿达说的阿萨德啊啊后阿达说的阿萨德阿萨德'
|
|
||||||
},
|
|
||||||
{
|
|
||||||
date:'2024-11-01',
|
|
||||||
name: "2",
|
|
||||||
},
|
|
||||||
]);
|
|
||||||
</script>
|
|
@ -5,8 +5,26 @@
|
|||||||
:inline="true"
|
:inline="true"
|
||||||
:model="queryParams"
|
:model="queryParams"
|
||||||
>
|
>
|
||||||
<el-form-item label="上访人" prop="name">
|
<el-form-item label="上访人" prop="visitorName">
|
||||||
<el-input v-model="queryParams.name"/>
|
<el-input v-model="queryParams.visitorName" clearable placeholder="请输入上访人"/>
|
||||||
|
</el-form-item>
|
||||||
|
<el-form-item label="电话" prop="visitorMobile">
|
||||||
|
<el-input v-model="queryParams.visitorMobile" clearable placeholder="请输入电话"/>
|
||||||
|
</el-form-item>
|
||||||
|
<el-form-item label="身份证" prop="visitorCode">
|
||||||
|
<el-input v-model="queryParams.visitorCode" clearable placeholder="请输入身份证"/>
|
||||||
|
</el-form-item>
|
||||||
|
<el-form-item label="时间" prop="visitorName">
|
||||||
|
<el-date-picker
|
||||||
|
v-model="searchTime"
|
||||||
|
type="daterange"
|
||||||
|
unlink-panels
|
||||||
|
range-separator="-"
|
||||||
|
start-placeholder="开始时间"
|
||||||
|
end-placeholder="截止时间"
|
||||||
|
value-format="YYYY-MM-DD"
|
||||||
|
@change="changeDateTimerHandle"
|
||||||
|
/>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
|
|
||||||
<el-form-item>
|
<el-form-item>
|
||||||
@ -79,7 +97,7 @@
|
|||||||
</template>
|
</template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column label="备注" prop="remark" width="230"/>
|
<el-table-column label="备注" prop="remark" width="230"/>
|
||||||
<el-table-column fixed="right" align="center" label="操作" width="240">
|
<el-table-column fixed="right" align="center" label="操作" width="250">
|
||||||
<template #default="scope">
|
<template #default="scope">
|
||||||
<el-button link size="small" type="primary"
|
<el-button link size="small" type="primary"
|
||||||
@click="AddEditRegisterVisitRef.showEditRegisterVisit(scope.row)">
|
@click="AddEditRegisterVisitRef.showEditRegisterVisit(scope.row)">
|
||||||
@ -101,6 +119,12 @@
|
|||||||
</el-icon>
|
</el-icon>
|
||||||
取消
|
取消
|
||||||
</el-button>
|
</el-button>
|
||||||
|
<el-button link size="small" type="info" @click="printRef.printMeetingForm(scope.row)">
|
||||||
|
<el-icon class="me-1">
|
||||||
|
<Printer/>
|
||||||
|
</el-icon>
|
||||||
|
打印
|
||||||
|
</el-button>
|
||||||
</template>
|
</template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
</el-table>
|
</el-table>
|
||||||
@ -116,6 +140,7 @@
|
|||||||
</div>
|
</div>
|
||||||
|
|
||||||
<AddEditRegisterVisit ref="AddEditRegisterVisitRef" @refresh="getLists"/>
|
<AddEditRegisterVisit ref="AddEditRegisterVisitRef" @refresh="getLists"/>
|
||||||
|
<Print ref="printRef"/>
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
<script setup>
|
<script setup>
|
||||||
@ -127,32 +152,31 @@ import {deleteVisit, getVisitList} from '@/api/RegistVisitApi/RegistVisitApi.js'
|
|||||||
import DictTag from '@/components/DictTag/index.vue';
|
import DictTag from '@/components/DictTag/index.vue';
|
||||||
import dayjs from 'dayjs';
|
import dayjs from 'dayjs';
|
||||||
import Upload from '@/views/PoliceWork/RegisterVisit/components/upload.vue';
|
import Upload from '@/views/PoliceWork/RegisterVisit/components/upload.vue';
|
||||||
|
import Print from '@/views/PoliceWork/RegisterVisit/print.vue';
|
||||||
|
|
||||||
|
|
||||||
const {proxy} = getCurrentInstance();
|
const {proxy} = getCurrentInstance();
|
||||||
const {visit_reply_type} = proxy.useDict('visit_reply_type');
|
const {visit_reply_type} = proxy.useDict('visit_reply_type');
|
||||||
|
|
||||||
const loading = ref(false);
|
const loading = ref(false);
|
||||||
|
const searchTime = ref([]);
|
||||||
|
|
||||||
const paging = ref({
|
const paging = ref({
|
||||||
pageNum: 1,
|
pageNum: 1,
|
||||||
pageSize: PageEnum.SIZE,
|
pageSize: PageEnum.SIZE,
|
||||||
});
|
});
|
||||||
const queryParams = ref({
|
const queryParams = ref({
|
||||||
name: '',
|
visitorName: '',
|
||||||
});
|
});
|
||||||
|
|
||||||
const tableDataRef = useTemplateRef('tableDataRef')
|
const tableDataRef = useTemplateRef('tableDataRef')
|
||||||
const AddEditRegisterVisitRef = useTemplateRef('AddEditRegisterVisitRef')
|
const AddEditRegisterVisitRef = useTemplateRef('AddEditRegisterVisitRef')
|
||||||
const uploadRef = useTemplateRef('uploadRef')
|
const uploadRef = useTemplateRef('uploadRef')
|
||||||
const queryParamsRef = useTemplateRef('queryParamsRef')
|
const queryParamsRef = useTemplateRef('queryParamsRef')
|
||||||
|
const printRef = useTemplateRef('printRef')
|
||||||
|
|
||||||
const total = ref(0);
|
const total = ref(0);
|
||||||
const tableData = ref([
|
const tableData = ref([])
|
||||||
{
|
|
||||||
name: '1'
|
|
||||||
}
|
|
||||||
])
|
|
||||||
|
|
||||||
|
|
||||||
onMounted(() => {
|
onMounted(() => {
|
||||||
@ -191,6 +215,29 @@ const handleRest = (formEl) => {
|
|||||||
formEl.resetFields();
|
formEl.resetFields();
|
||||||
// console.log()
|
// console.log()
|
||||||
};
|
};
|
||||||
|
|
||||||
|
// 改变时间
|
||||||
|
const changeDateTimerHandle = (date) => {
|
||||||
|
if (date) {
|
||||||
|
queryParams.value = {
|
||||||
|
...queryParams.value,
|
||||||
|
params: {
|
||||||
|
beginTime: date[0],
|
||||||
|
endTime: date[1]
|
||||||
|
}
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
queryParams.value = {
|
||||||
|
...queryParams.value,
|
||||||
|
params: {
|
||||||
|
beginTime: '',
|
||||||
|
endTime: ''
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
getLists()
|
||||||
|
}
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
<style lang="scss" scoped></style>
|
<style lang="scss" scoped></style>
|
||||||
|
481
src/views/PoliceWork/RegisterVisit/print.html
Normal file
481
src/views/PoliceWork/RegisterVisit/print.html
Normal file
@ -0,0 +1,481 @@
|
|||||||
|
<!DOCTYPE html>
|
||||||
|
<html lang="en">
|
||||||
|
<head>
|
||||||
|
<meta charset="UTF-8">
|
||||||
|
<title>Title</title>
|
||||||
|
<style>
|
||||||
|
/* stylelint-disable */
|
||||||
|
html,
|
||||||
|
body {
|
||||||
|
width: 100%;
|
||||||
|
height: 100%;
|
||||||
|
}
|
||||||
|
|
||||||
|
input::-ms-clear,
|
||||||
|
input::-ms-reveal {
|
||||||
|
display: none;
|
||||||
|
}
|
||||||
|
|
||||||
|
*,
|
||||||
|
*::before,
|
||||||
|
*::after {
|
||||||
|
box-sizing: border-box;
|
||||||
|
}
|
||||||
|
|
||||||
|
html {
|
||||||
|
font-family: sans-serif;
|
||||||
|
line-height: 1.15;
|
||||||
|
-webkit-text-size-adjust: 100%;
|
||||||
|
-ms-text-size-adjust: 100%;
|
||||||
|
-ms-overflow-style: scrollbar;
|
||||||
|
-webkit-tap-highlight-color: rgba(0, 0, 0, 0);
|
||||||
|
}
|
||||||
|
|
||||||
|
@-ms-viewport {
|
||||||
|
width: device-width;
|
||||||
|
}
|
||||||
|
|
||||||
|
body {
|
||||||
|
margin: 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
[tabindex='-1']:focus {
|
||||||
|
outline: none;
|
||||||
|
}
|
||||||
|
|
||||||
|
hr {
|
||||||
|
box-sizing: content-box;
|
||||||
|
height: 0;
|
||||||
|
overflow: visible;
|
||||||
|
}
|
||||||
|
|
||||||
|
h1,
|
||||||
|
h2,
|
||||||
|
h3,
|
||||||
|
h4,
|
||||||
|
h5,
|
||||||
|
h6 {
|
||||||
|
margin-top: 0;
|
||||||
|
margin-bottom: 0.5em;
|
||||||
|
font-weight: 500;
|
||||||
|
}
|
||||||
|
|
||||||
|
p {
|
||||||
|
margin-top: 0;
|
||||||
|
margin-bottom: 1em;
|
||||||
|
}
|
||||||
|
|
||||||
|
abbr[title],
|
||||||
|
abbr[data-original-title] {
|
||||||
|
-webkit-text-decoration: underline dotted;
|
||||||
|
text-decoration: underline;
|
||||||
|
text-decoration: underline dotted;
|
||||||
|
border-bottom: 0;
|
||||||
|
cursor: help;
|
||||||
|
}
|
||||||
|
|
||||||
|
address {
|
||||||
|
margin-bottom: 1em;
|
||||||
|
font-style: normal;
|
||||||
|
line-height: inherit;
|
||||||
|
}
|
||||||
|
|
||||||
|
input[type='text'],
|
||||||
|
input[type='password'],
|
||||||
|
input[type='number'],
|
||||||
|
textarea {
|
||||||
|
-webkit-appearance: none;
|
||||||
|
}
|
||||||
|
|
||||||
|
ol,
|
||||||
|
ul,
|
||||||
|
dl {
|
||||||
|
margin-top: 0;
|
||||||
|
margin-bottom: 1em;
|
||||||
|
}
|
||||||
|
|
||||||
|
ol ol,
|
||||||
|
ul ul,
|
||||||
|
ol ul,
|
||||||
|
ul ol {
|
||||||
|
margin-bottom: 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
dt {
|
||||||
|
font-weight: 500;
|
||||||
|
}
|
||||||
|
|
||||||
|
dd {
|
||||||
|
margin-bottom: 0.5em;
|
||||||
|
margin-left: 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
blockquote {
|
||||||
|
margin: 0 0 1em;
|
||||||
|
}
|
||||||
|
|
||||||
|
dfn {
|
||||||
|
font-style: italic;
|
||||||
|
}
|
||||||
|
|
||||||
|
b,
|
||||||
|
strong {
|
||||||
|
font-weight: bolder;
|
||||||
|
}
|
||||||
|
|
||||||
|
small {
|
||||||
|
font-size: 80%;
|
||||||
|
}
|
||||||
|
|
||||||
|
sub,
|
||||||
|
sup {
|
||||||
|
position: relative;
|
||||||
|
font-size: 75%;
|
||||||
|
line-height: 0;
|
||||||
|
vertical-align: baseline;
|
||||||
|
}
|
||||||
|
|
||||||
|
sub {
|
||||||
|
bottom: -0.25em;
|
||||||
|
}
|
||||||
|
|
||||||
|
sup {
|
||||||
|
top: -0.5em;
|
||||||
|
}
|
||||||
|
|
||||||
|
pre,
|
||||||
|
code,
|
||||||
|
kbd,
|
||||||
|
samp {
|
||||||
|
font-size: 1em;
|
||||||
|
font-family: 'SFMono-Regular', Consolas, 'Liberation Mono', Menlo, Courier, monospace;
|
||||||
|
}
|
||||||
|
|
||||||
|
pre {
|
||||||
|
margin-top: 0;
|
||||||
|
margin-bottom: 1em;
|
||||||
|
overflow: auto;
|
||||||
|
}
|
||||||
|
|
||||||
|
figure {
|
||||||
|
margin: 0 0 1em;
|
||||||
|
}
|
||||||
|
|
||||||
|
img {
|
||||||
|
vertical-align: middle;
|
||||||
|
border-style: none;
|
||||||
|
}
|
||||||
|
|
||||||
|
a,
|
||||||
|
area,
|
||||||
|
button,
|
||||||
|
[role='button'],
|
||||||
|
input:not([type='range']),
|
||||||
|
label,
|
||||||
|
select,
|
||||||
|
summary,
|
||||||
|
textarea {
|
||||||
|
touch-action: manipulation;
|
||||||
|
}
|
||||||
|
|
||||||
|
table {
|
||||||
|
border-collapse: collapse;
|
||||||
|
}
|
||||||
|
|
||||||
|
caption {
|
||||||
|
padding-top: 0.75em;
|
||||||
|
padding-bottom: 0.3em;
|
||||||
|
text-align: left;
|
||||||
|
caption-side: bottom;
|
||||||
|
}
|
||||||
|
|
||||||
|
input,
|
||||||
|
button,
|
||||||
|
select,
|
||||||
|
optgroup,
|
||||||
|
textarea {
|
||||||
|
margin: 0;
|
||||||
|
color: inherit;
|
||||||
|
font-size: inherit;
|
||||||
|
font-family: inherit;
|
||||||
|
line-height: inherit;
|
||||||
|
}
|
||||||
|
|
||||||
|
button,
|
||||||
|
input {
|
||||||
|
overflow: visible;
|
||||||
|
}
|
||||||
|
|
||||||
|
button,
|
||||||
|
select {
|
||||||
|
text-transform: none;
|
||||||
|
}
|
||||||
|
|
||||||
|
button,
|
||||||
|
html [type='button'],
|
||||||
|
[type='reset'],
|
||||||
|
[type='submit'] {
|
||||||
|
-webkit-appearance: button;
|
||||||
|
}
|
||||||
|
|
||||||
|
button::-moz-focus-inner,
|
||||||
|
[type='button']::-moz-focus-inner,
|
||||||
|
[type='reset']::-moz-focus-inner,
|
||||||
|
[type='submit']::-moz-focus-inner {
|
||||||
|
padding: 0;
|
||||||
|
border-style: none;
|
||||||
|
}
|
||||||
|
|
||||||
|
input[type='radio'],
|
||||||
|
input[type='checkbox'] {
|
||||||
|
box-sizing: border-box;
|
||||||
|
padding: 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
input[type='date'],
|
||||||
|
input[type='time'],
|
||||||
|
input[type='datetime-local'],
|
||||||
|
input[type='month'] {
|
||||||
|
-webkit-appearance: listbox;
|
||||||
|
}
|
||||||
|
|
||||||
|
textarea {
|
||||||
|
overflow: auto;
|
||||||
|
resize: vertical;
|
||||||
|
}
|
||||||
|
|
||||||
|
fieldset {
|
||||||
|
min-width: 0;
|
||||||
|
margin: 0;
|
||||||
|
padding: 0;
|
||||||
|
border: 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
legend {
|
||||||
|
display: block;
|
||||||
|
width: 100%;
|
||||||
|
max-width: 100%;
|
||||||
|
margin-bottom: 0.5em;
|
||||||
|
padding: 0;
|
||||||
|
color: inherit;
|
||||||
|
font-size: 1.5em;
|
||||||
|
line-height: inherit;
|
||||||
|
white-space: normal;
|
||||||
|
}
|
||||||
|
|
||||||
|
progress {
|
||||||
|
vertical-align: baseline;
|
||||||
|
}
|
||||||
|
|
||||||
|
[type='number']::-webkit-inner-spin-button,
|
||||||
|
[type='number']::-webkit-outer-spin-button {
|
||||||
|
height: auto;
|
||||||
|
}
|
||||||
|
|
||||||
|
[type='search'] {
|
||||||
|
outline-offset: -2px;
|
||||||
|
-webkit-appearance: none;
|
||||||
|
}
|
||||||
|
|
||||||
|
[type='search']::-webkit-search-cancel-button,
|
||||||
|
[type='search']::-webkit-search-decoration {
|
||||||
|
-webkit-appearance: none;
|
||||||
|
}
|
||||||
|
|
||||||
|
::-webkit-file-upload-button {
|
||||||
|
font: inherit;
|
||||||
|
-webkit-appearance: button;
|
||||||
|
}
|
||||||
|
|
||||||
|
output {
|
||||||
|
display: inline-block;
|
||||||
|
}
|
||||||
|
|
||||||
|
summary {
|
||||||
|
display: list-item;
|
||||||
|
}
|
||||||
|
|
||||||
|
template {
|
||||||
|
display: none;
|
||||||
|
}
|
||||||
|
|
||||||
|
[hidden] {
|
||||||
|
display: none !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
mark {
|
||||||
|
padding: 0.2em;
|
||||||
|
background-color: #feffe6;
|
||||||
|
}
|
||||||
|
</style>
|
||||||
|
</head>
|
||||||
|
<body>
|
||||||
|
<div id="printContent">
|
||||||
|
<div style="display: flex;flex-direction: column;align-items: center;flex-wrap: nowrap;margin-bottom: 20px;">
|
||||||
|
<span>常熟市人民检察院</span>
|
||||||
|
<h1 style="font-weight: normal;margin: 0;">控告申诉登记表</h1>
|
||||||
|
</div>
|
||||||
|
<p style="text-align: center;margin: 0">常检控申2025年第 号</p>
|
||||||
|
|
||||||
|
<table border=1 cellspacing=0 style="margin: 0 auto;">
|
||||||
|
<tr style="height: 45px">
|
||||||
|
<td style="text-align: center;width: 80px;" colspan="2">信访形式</td>
|
||||||
|
<td style="text-align: center;width: 80px;" colspan="3"></td>
|
||||||
|
<td width=72 style="text-align: center;">信访时间</td>
|
||||||
|
<td width=104 style="text-align: center;" colspan="4"></td>
|
||||||
|
<td width=87 style="text-align: center;" colspan="4">承办(接待)人</td>
|
||||||
|
<td width=77 style="text-align: center;" colspan="2"></td>
|
||||||
|
</tr>
|
||||||
|
<tr style="height: 45px">
|
||||||
|
<td style="text-align: center;width: 80px;" colspan="2">信访类型</td>
|
||||||
|
<td style="text-align: center;" colspan="3"></td>
|
||||||
|
<td width=49 style="text-align: center;">来源</td>
|
||||||
|
<td width=104 colspan="4"></td>
|
||||||
|
<td width=130 colspan="4" style="text-align: center;">是否重复信访</td>
|
||||||
|
<td width=77 colspan="2" style="text-align: center;">否</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td width=30 rowspan="3" style="text-align: center;height: 150px">来信来访人情况</td>
|
||||||
|
<td width=41 style="text-align: center;">姓名</td>
|
||||||
|
<td width=120 style="text-align: center;" colspan="5"></td>
|
||||||
|
<td width=42 style="text-align: center;">性别</td>
|
||||||
|
<td width=40 style="text-align: center;" colspan=""></td>
|
||||||
|
<td width=37 style="text-align: center;" colspan="2">年龄</td>
|
||||||
|
<td width=38 style="text-align: center;" colspan="2"></td>
|
||||||
|
<td width=90 style="text-align: center;" colspan="2">文化程度</td>
|
||||||
|
<td width=50 style="text-align: center;"></td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td width=69 style="font-size: 12px;text-align: center;" colspan=3>
|
||||||
|
工作单位及职务
|
||||||
|
</td>
|
||||||
|
<td width=134 style="text-align: center;" colspan=4></td>
|
||||||
|
<td width=77 style="text-align: center;" colspan=4>身份证号码</td>
|
||||||
|
<td width=127 style="text-align: center;" colspan=4></td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td width=69 colspan=3 style="text-align: center;">联系住址</td>
|
||||||
|
<td width=134 colspan=4></td>
|
||||||
|
<td width=77 colspan=4 style="text-align: center;">联系电话</td>
|
||||||
|
<td width=127 colspan=4></td>
|
||||||
|
</tr>
|
||||||
|
<tr style="height: 200px;">
|
||||||
|
<td width=30 style="text-align: center;">来信来访内容摘要</td>
|
||||||
|
<td width=409 colspan=15></td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td width=81 colspan=3 style="text-align: center;">
|
||||||
|
<div style="display: flex;flex-direction: column;margin: 10px 0;row-gap: 6px;">
|
||||||
|
<span>承办</span>
|
||||||
|
<span>(接待)人</span>
|
||||||
|
<span>意见</span>
|
||||||
|
</div>
|
||||||
|
</td>
|
||||||
|
<td width=358 colspan=13></td>
|
||||||
|
</tr>
|
||||||
|
<tr style="height: 45px">
|
||||||
|
<td width=81 colspan=3 style="text-align: center;">
|
||||||
|
<div style="display: flex;flex-direction: column;margin: 10px 0;row-gap: 6px;">
|
||||||
|
<span>部门</span>
|
||||||
|
<span>负责人</span>
|
||||||
|
<span>意见</span>
|
||||||
|
</div>
|
||||||
|
</td>
|
||||||
|
<td width=358 colspan=13></td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td width=81 colspan=3 style="text-align: center;">
|
||||||
|
<div style="display: flex;flex-direction: column;margin: 10px 0;row-gap: 20px;">
|
||||||
|
<span>分管领导</span>
|
||||||
|
<span>意见</span>
|
||||||
|
</div>
|
||||||
|
</td>
|
||||||
|
<td width=358 colspan=13 style=""></td>
|
||||||
|
</tr>
|
||||||
|
<tr style="height: 50px">
|
||||||
|
<td width=81 colspan=3 style="text-align: center;">处理结果</td>
|
||||||
|
<td width=358 valign=top colspan=13></td>
|
||||||
|
</tr>
|
||||||
|
<tr style="height: 60px">
|
||||||
|
<td width=81 colspan=3 style="text-align: center;">备注</td>
|
||||||
|
<td width=358 valign=top colspan=13></td>
|
||||||
|
</tr>
|
||||||
|
</table>
|
||||||
|
|
||||||
|
<table border="1" cellspacing="0" style="display: none">
|
||||||
|
<tr>
|
||||||
|
<td>信访形式</td>
|
||||||
|
<td>来信</td>
|
||||||
|
<td>信访时间</td>
|
||||||
|
<td>2024.12.10</td>
|
||||||
|
<td>承办(接待)人</td>
|
||||||
|
<td>2024.12.10</td>
|
||||||
|
</tr>
|
||||||
|
|
||||||
|
<tr>
|
||||||
|
<td>信访类型</td>
|
||||||
|
<td>司法救助</td>
|
||||||
|
<td>来源</td>
|
||||||
|
<td>直接受理</td>
|
||||||
|
<td>是否重复信访</td>
|
||||||
|
<td>否</td>
|
||||||
|
</tr>
|
||||||
|
|
||||||
|
<tr>
|
||||||
|
<td rowspan="3">来信来访人情况</td>
|
||||||
|
<td width="80">姓名</td>
|
||||||
|
<td>***</td>
|
||||||
|
<td>性别</td>
|
||||||
|
<td>女</td>
|
||||||
|
<td>年龄</td>
|
||||||
|
<td>36</td>
|
||||||
|
<td>文化程度</td>
|
||||||
|
<td>/</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td>工作单位及职务</td>
|
||||||
|
<td>/</td>
|
||||||
|
<td>身份证</td>
|
||||||
|
<td>/</td>
|
||||||
|
</tr>
|
||||||
|
|
||||||
|
<tr>
|
||||||
|
<td>联系住址</td>
|
||||||
|
<td>撒打算大</td>
|
||||||
|
<td>联系电话</td>
|
||||||
|
<td>1341341234</td>
|
||||||
|
</tr>
|
||||||
|
|
||||||
|
<tr>
|
||||||
|
<td>来信来访内容摘要</td>
|
||||||
|
<td colspan="5" height="100"></td>
|
||||||
|
</tr>
|
||||||
|
|
||||||
|
<tr>
|
||||||
|
<td>承办(接待)人意见</td>
|
||||||
|
<td colspan="5" height="120"></td>
|
||||||
|
</tr>
|
||||||
|
|
||||||
|
<tr>
|
||||||
|
<td>部门负责人意见</td>
|
||||||
|
<td colspan="5" height="120"></td>
|
||||||
|
</tr>
|
||||||
|
|
||||||
|
<tr>
|
||||||
|
<td>分管领导意见</td>
|
||||||
|
<td colspan="5" height="120"></td>
|
||||||
|
</tr>
|
||||||
|
|
||||||
|
<tr>
|
||||||
|
<td>处理结果</td>
|
||||||
|
<td colspan="5" height="120"></td>
|
||||||
|
</tr>
|
||||||
|
|
||||||
|
<tr>
|
||||||
|
<td>备注</td>
|
||||||
|
<td colspan="5" height="120"></td>
|
||||||
|
</tr>
|
||||||
|
</table>
|
||||||
|
</div>
|
||||||
|
</body>
|
||||||
|
</html>
|
174
src/views/PoliceWork/RegisterVisit/print.vue
Normal file
174
src/views/PoliceWork/RegisterVisit/print.vue
Normal file
@ -0,0 +1,174 @@
|
|||||||
|
<template>
|
||||||
|
|
||||||
|
<!-- <el-button @click="printMeetingForm">-->
|
||||||
|
<!-- <el-icon class="me-1">-->
|
||||||
|
<!-- <Printer/>-->
|
||||||
|
<!-- </el-icon>-->
|
||||||
|
<!-- 打印-->
|
||||||
|
<!-- </el-button>-->
|
||||||
|
|
||||||
|
|
||||||
|
<div id="printContent" class="d-none">
|
||||||
|
<div style="display: flex;flex-direction: column;align-items: center;flex-wrap: nowrap;margin-bottom: 20px;">
|
||||||
|
<span>常熟市人民检察院</span>
|
||||||
|
<h1 style="font-weight: normal;margin: 0;">控告申诉登记表</h1>
|
||||||
|
</div>
|
||||||
|
<p style="text-align: center;margin: 0">{{ queryParams.visitNo }}</p>
|
||||||
|
|
||||||
|
<table border=1 cellspacing=0 style="margin: 0 auto;">
|
||||||
|
<tbody>
|
||||||
|
<tr style="height: 45px">
|
||||||
|
<td style="text-align: center;width: 80px;" colspan="2">信访形式</td>
|
||||||
|
<td style="text-align: center;width: 80px;" colspan="3">信访形式</td>
|
||||||
|
<td width=72 style="text-align: center;">信访时间</td>
|
||||||
|
<td width=104 style="text-align: center;" colspan="4">
|
||||||
|
{{ dayjs(queryParams.visitTime).format('YYYY-MM-DD') }}
|
||||||
|
</td>
|
||||||
|
<td width=87 style="text-align: center;" colspan="4">承办(接待)人</td>
|
||||||
|
<td width=77 style="text-align: center;" colspan="2">{{ queryParams.createBy }}</td>
|
||||||
|
</tr>
|
||||||
|
<tr style="height: 45px">
|
||||||
|
<td style="text-align: center;width: 80px;" colspan="2">信访类型</td>
|
||||||
|
<td style="text-align: center;" colspan="3">{{ queryParams.typeName }}</td>
|
||||||
|
<td width=49 style="text-align: center;">来源</td>
|
||||||
|
<td width=104 colspan="4" style="text-align: center;">{{ queryParams.source }}</td>
|
||||||
|
<td width=130 colspan="4" style="text-align: center;">是否重复信访</td>
|
||||||
|
<td width=77 colspan="2" style="text-align: center;">{{ queryParams.isVisited ? '是' : '否' }}</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td width=30 rowspan="3" style="text-align: center;height: 150px">来信来访人情况</td>
|
||||||
|
<td width=41 style="text-align: center;">姓名</td>
|
||||||
|
<td width=120 style="text-align: center;" colspan="5">{{ queryParams.visitorName }}</td>
|
||||||
|
<td width=42 style="text-align: center;">性别</td>
|
||||||
|
<td width=40 style="text-align: center;" colspan="">{{ queryParams.visitorSexName }}</td>
|
||||||
|
<td width=37 style="text-align: center;" colspan="2">年龄</td>
|
||||||
|
<td width=38 style="text-align: center;" colspan="2">{{ queryParams.visitorAge }}</td>
|
||||||
|
<td width=90 style="text-align: center;" colspan="2">文化程度</td>
|
||||||
|
<td width=50 style="text-align: center;">{{ queryParams.visitorDegreeName }}</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td width=69 style="font-size: 12px;text-align: center;" colspan=3>
|
||||||
|
工作单位及职务
|
||||||
|
</td>
|
||||||
|
<td width=134 style="text-align: center;font-size: 12px;" colspan=4>{{ queryParams.visitorContact }}
|
||||||
|
</td>
|
||||||
|
<td width=77 style="text-align: center;" colspan=4>身份证号码</td>
|
||||||
|
<td width=127 style="text-align: center;" colspan=4>{{ queryParams.visitorCode }}</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td width=69 colspan=3 style="text-align: center;">联系住址</td>
|
||||||
|
<td width=134 colspan=4 style="text-align:center;font-size: 12px;">{{ queryParams.visitorAddress }}</td>
|
||||||
|
<td width=77 colspan=4 style="text-align: center;">联系电话</td>
|
||||||
|
<td width=127 colspan=4 style="text-align: center;">{{ queryParams.visitorMobile }}</td>
|
||||||
|
</tr>
|
||||||
|
<tr style="height: 200px;">
|
||||||
|
<td width=30 style="text-align: center;">来信来访内容摘要</td>
|
||||||
|
<td width=409 colspan=15></td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td width=81 colspan=3 style="text-align: center;">
|
||||||
|
<div style="display: flex;flex-direction: column;margin: 10px 0;row-gap: 6px;">
|
||||||
|
<span>承办</span>
|
||||||
|
<span>(接待)人</span>
|
||||||
|
<span>意见</span>
|
||||||
|
</div>
|
||||||
|
</td>
|
||||||
|
<td width=358 colspan=13></td>
|
||||||
|
</tr>
|
||||||
|
<tr style="height: 45px">
|
||||||
|
<td width=81 colspan=3 style="text-align: center;">
|
||||||
|
<div style="display: flex;flex-direction: column;margin: 10px 0;row-gap: 6px;">
|
||||||
|
<span>部门</span>
|
||||||
|
<span>负责人</span>
|
||||||
|
<span>意见</span>
|
||||||
|
</div>
|
||||||
|
</td>
|
||||||
|
<td width=358 colspan=13></td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td width=81 colspan=3 style="text-align: center;">
|
||||||
|
<div style="display: flex;flex-direction: column;margin: 10px 0;row-gap: 20px;">
|
||||||
|
<span>分管领导</span>
|
||||||
|
<span>意见</span>
|
||||||
|
</div>
|
||||||
|
</td>
|
||||||
|
<td width=358 colspan=13 style=""></td>
|
||||||
|
</tr>
|
||||||
|
<tr style="height: 50px">
|
||||||
|
<td width=81 colspan=3 style="text-align: center;">处理结果</td>
|
||||||
|
<td width=358 valign=top colspan=13></td>
|
||||||
|
</tr>
|
||||||
|
<tr style="height: 60px">
|
||||||
|
<td width=81 colspan=3 style="text-align: center;">备注</td>
|
||||||
|
<td width=358 valign=top colspan="13"></td>
|
||||||
|
</tr>
|
||||||
|
</tbody>
|
||||||
|
</table>
|
||||||
|
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
|
|
||||||
|
<script setup>
|
||||||
|
import {ElMessageBox} from 'element-plus';
|
||||||
|
import printJS from 'print-js';
|
||||||
|
import {getVisitInfo} from '@/api/RegistVisitApi/RegistVisitApi.js';
|
||||||
|
import dayjs from 'dayjs';
|
||||||
|
|
||||||
|
defineOptions({
|
||||||
|
name: 'Print'
|
||||||
|
})
|
||||||
|
|
||||||
|
const queryParams = ref({})
|
||||||
|
|
||||||
|
const printMeetingForm = (data) => {
|
||||||
|
ElMessageBox({
|
||||||
|
title: '',
|
||||||
|
message: '您是否确认要打印当前的会见单据?',
|
||||||
|
showCancelButton: true,
|
||||||
|
confirmButtonText: '确定',
|
||||||
|
cancelButtonText: '取消',
|
||||||
|
beforeClose: (action, instance, done) => {
|
||||||
|
if (action === 'confirm') {
|
||||||
|
instance.confirmButtonLoading = true
|
||||||
|
instance.confirmButtonText = '获取打印数据中...'
|
||||||
|
|
||||||
|
// new Promise(resolve => {
|
||||||
|
// setTimeout(() => {
|
||||||
|
// resolve()
|
||||||
|
// }, 1000)
|
||||||
|
// }).then(() => {
|
||||||
|
// instance.confirmButtonLoading = false
|
||||||
|
// done()
|
||||||
|
// })
|
||||||
|
getDetail(data).then(() => {
|
||||||
|
instance.confirmButtonLoading = false
|
||||||
|
done()
|
||||||
|
})
|
||||||
|
} else {
|
||||||
|
done()
|
||||||
|
}
|
||||||
|
},
|
||||||
|
}).then((action) => {
|
||||||
|
printJS({
|
||||||
|
printable: 'printContent',
|
||||||
|
type: 'html',
|
||||||
|
css: [
|
||||||
|
'/print.css'
|
||||||
|
],
|
||||||
|
scanStyles: false
|
||||||
|
})
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
defineExpose({printMeetingForm})
|
||||||
|
|
||||||
|
// 获取详情
|
||||||
|
const getDetail = async (row) => {
|
||||||
|
const res = await getVisitInfo(row.visitId)
|
||||||
|
queryParams.value = res.data;
|
||||||
|
}
|
||||||
|
</script>
|
||||||
|
|
||||||
|
<style scoped lang="scss">
|
||||||
|
|
||||||
|
</style>
|
Loading…
x
Reference in New Issue
Block a user