罗斌杰 1 year ago
parent
commit
6f3d17f9c4
  1. 2
      src/components/follow/FollowQuery.vue
  2. 177
      src/components/follow/PhoneFollowUp.vue
  3. 283
      src/components/follow/SmsSend.vue
  4. 0
      src/components/report/AppletRegisterInfo.vue
  5. 12
      src/router/index.js
  6. 337
      src/views/customerReport/unitStatistics.vue

2
src/components/follow/FollowQuery.vue

@ -75,7 +75,7 @@
<!--通用选单位体检次数分组的控件-->
<el-dialog title="体检单位选择" :visible.sync="report.dialogCusOrgOCX" :close-on-click-modal="false" width="880px"
height="600px">
<CusOrgOCX :useCustomerOrg="true" :initDateType="'creationTime'" :isUnit="true" />
<CusOrgOCX :useCustomerOrg="true" :initDateType="'creationTime'" :isUnit="false" />
</el-dialog>
</div>
</template>

177
src/components/follow/PhoneFollowUp.vue

@ -112,23 +112,9 @@
>
<el-form ref="form" :model="form" label-width="80px">
<el-row>
<el-col :span="6">
<el-col :span="title==1?'4':'6'">
<el-form-item label="编号">
<el-input
v-model="form.id"
style="width: 65%"
disabled
size="small"
></el-input>
</el-form-item>
</el-col>
<el-col :span="4" v-if="title != 1">
<el-form-item label="是否完成">
<el-checkbox
v-model="form.isComplete"
true-label="Y"
false-label="N"
/>
<el-input v-model="form.id" disabled size="small"></el-input>
</el-form-item>
</el-col>
<el-col :span="6" v-if="title == 1">
@ -143,62 +129,62 @@
</el-select>
</el-form-item>
</el-col>
<el-col :span="6" v-if="title == 1 && mode == 1">
<el-form-item label="随访模式">
<el-select
v-model="form.followUpMode"
placeholder="请选择"
size="small"
>
<el-option
v-for="item in followUpMode"
:key="item.id"
:label="item.displayName"
:value="item.id"
/>
</el-select>
<el-col :span="4" v-if="title == 1&&mode == 1">
<el-form-item label="间隔天数">
<el-input v-model="form.intervalDays" size="small"></el-input>
</el-form-item>
</el-col>
<el-col :span="4" v-if="title == 1&&mode == 1">
<el-form-item label="生成次数">
<el-input v-model="form.generateCount" size="small"></el-input>
</el-form-item>
</el-col>
<el-col :span="4" v-if="mode == 1 && form.followUpMode == 0">
<el-form-item label="截止时间">
<el-col :span="4" v-if="title == 1&&mode == 1">
<el-form-item label="开始时间">
<el-date-picker
type="datetime"
placeholder="选择日期时间"
size="small"
v-model="form.endDate"
value-format="yyyy-MM-dd HH:mm:ss"
v-model="form.startDate"
value-format="yyyy-MM-dd"
editable
style="width: 177px"
>
</el-date-picker>
</el-form-item>
</el-col>
<el-col :span="4" v-if="mode == 0">
<el-col :span="4" v-if="title == 1&&mode == 0">
<el-form-item label="随访日期">
<el-date-picker
type="datetime"
placeholder="选择日期时间"
size="small"
v-model="form.planFollowDate"
value-format="yyyy-MM-dd HH:mm:ss"
format="yyyy-MM-dd HH:mm:ss"
value-format="yyyy-MM-dd"
editable
style="width: 177px"
>
</el-date-picker>
</el-form-item>
</el-col>
</el-row>
<el-row v-if="mode == 1">
<el-col :span="24">
<el-form-item
:label="form.followUpMode == 0 ? 'corn表达式' : '生成天数'"
>
<!-- <el-input
v-model="form.parmValue"
size="small"
></el-input> -->
<el-input v-model="form.modeValue"></el-input>
<el-col :span="4" v-if="title != 1">
<el-form-item label="是否完成">
<el-checkbox
v-model="form.isComplete"
true-label="Y"
false-label="N"
/>
</el-form-item>
</el-col>
<el-col :span="4" v-if="title !=1">
<el-form-item label="随访日期">
<el-date-picker
placeholder="选择日期时间"
size="small"
v-model="form.planFollowDate"
value-format="yyyy-MM-dd"
editable
style="width: 177px"
>
</el-date-picker>
</el-form-item>
</el-col>
</el-row>
@ -214,7 +200,7 @@
</el-col>
</el-row>
<el-row>
<el-col :span="24">
<el-col :span="24" v-if="title != 1">
<el-form-item label="回复内容">
<!-- <el-input
v-model="form.parmValue"
@ -290,13 +276,15 @@ export default {
dialogVisible: false,
curRow: {},
form: {
followUpMode: "",
modeValue: "",
endDate: "",
followUpContent: "",
replyContent: "",
followUpId: "",
planFollowDate: "",
isComplete:""
isComplete: "",
generateCount: "",
intervalDays: "",
generateCount: "",
replyContent:""
},
mode: "0",
modes: [
@ -309,28 +297,6 @@ export default {
displayName: "生成多条",
},
],
followUpMode: [
{
id: "0",
displayName: "corn表达式",
},
{
id: "1",
displayName: "按天",
},
{
id: "2",
displayName: "按周",
},
{
id: "3",
displayName: "按月",
},
{
id: "4",
displayName: "按年",
},
],
title: "",
};
},
@ -372,27 +338,24 @@ export default {
addoredit() {
if (this.title == 1) {
if (this.mode == 1) {
if (this.form.followUpMode == "") {
this.$message.warning("请选择随访模式");
} else if (this.form.followUpMode == 0 && this.form.modeValue == "") {
this.$message.warning("请输入corn表达式");
} else if (this.form.followUpMode == 0 && this.form.endDate == "") {
this.$message.warning("请选择截止时间");
} else if (this.form.followUpMode != 0 && this.form.modeValue == "") {
this.$message.warning("请输入生成天数");
if (this.form.intervalDays == "") {
this.$message.warning("请输入间隔天数");
} else if (this.form.startDate == "") {
this.$message.warning("请选择开始时间");
} else if (this.form.generateCount == "") {
this.$message.warning("请输入生成次数");
} else {
postapi("/api/app/PhoneFollowUp/AutoCreate", {
followUpId: this.dataTransOpts.tableS.patient_register.followUpId,
followUpMode: this.form.followUpMode,
modeValue: this.form.modeValue,
endDate: this.form.endDate,
intervalDays: this.form.intervalDays,
startDate: this.form.startDate,
followUpContent: this.form.followUpContent,
replyContent: this.form.replyContent,
generateCount: this.form.generateCount,
}).then((res) => {
if (res.code > -1) {
this.getLists();
this.dialogVisible = false;
this.mode="0"
this.mode = "0";
}
});
}
@ -409,25 +372,25 @@ export default {
if (res.code > -1) {
this.getLists();
this.dialogVisible = false;
this.mode="0"
this.mode = "0";
}
});
}
}
}else{
} else {
postapi("/api/app/PhoneFollowUp/Update", {
phoneFollowUpId: this.form.id,
planFollowDate: this.form.planFollowDate,
followUpContent: this.form.followUpContent,
replyContent: this.form.replyContent,
isComplete:this.form.isComplete
}).then((res) => {
if (res.code > -1) {
this.getLists();
this.dialogVisible = false;
this.mode="0"
}
});
phoneFollowUpId: this.form.id,
planFollowDate: this.form.planFollowDate,
followUpContent: this.form.followUpContent,
replyContent: this.form.replyContent,
isComplete: this.form.isComplete,
}).then((res) => {
if (res.code > -1) {
this.getLists();
this.dialogVisible = false;
this.mode = "0";
}
});
}
},
rowick(row) {
@ -486,11 +449,11 @@ export default {
confirmButtonClass: "commonbutton",
})
.then(() => {
postapi("/api/app/PhoneFollowUp/Delete",{
phoneFollowUpId:this.curRow.id
postapi("/api/app/PhoneFollowUp/Delete", {
phoneFollowUpId: this.curRow.id,
}).then((res) => {
if (res.code != -1) {
this.curRow=this.$options.data().curRow
this.curRow = this.$options.data().curRow;
this.getLists();
//this.$message.success("");
}

283
src/components/follow/SmsSend.vue

@ -1,45 +1,94 @@
<template>
<div style="display: flex;">
<div style="display: flex">
<div :style="`width: ${window.pageWidth - 120}px;`">
<el-table :data="phoneFollowUp" border
:height="window.pageHeight < 600 ? 124 : Math.floor((window.pageHeight - 228) / 3)" size="small"
highlight-current-row ref="phoneFollowUp" @row-click="rowick">
<el-table
:data="phoneFollowUp"
border
:height="
window.pageHeight < 600
? 124
: Math.floor((window.pageHeight - 228) / 3)
"
size="small"
highlight-current-row
ref="phoneFollowUp"
@row-click="rowick"
>
<el-table-column type="index" label="序号" width="50" align="center" />
<el-table-column prop="patientName" label="姓名" min-width="80" />
<el-table-column prop="mobileTelephone" label="手机号" min-width="130" align="center" />
<el-table-column
prop="mobileTelephone"
label="手机号"
min-width="130"
align="center"
/>
<!-- <el-table-column prop="SmsTypeName" label="短信类别" min-width="80" align="center">
</el-table-column> -->
<el-table-column prop="content" label="短信内容" min-width="300" />
<el-table-column prop="isComplete" label="完成" min-width="40" align="center">
<el-table-column
prop="isComplete"
label="完成"
min-width="40"
align="center"
>
<template slot-scope="scope">
<el-checkbox v-model="scope.row.isComplete" true-label="Y" false-label="N" disabled />
<el-checkbox
v-model="scope.row.isComplete"
true-label="Y"
false-label="N"
disabled
/>
</template>
</el-table-column>
<el-table-column prop="planSendDate" label="推送时间" min-width="300" />
<el-table-column prop="lastModifierName" label="修改人" min-width="80" align="center" />
<el-table-column prop="lastModificationTime" label="修改日期" min-width="100" align="center">
<el-table-column
prop="lastModifierName"
label="修改人"
min-width="80"
align="center"
/>
<el-table-column
prop="lastModificationTime"
label="修改日期"
min-width="100"
align="center"
>
<template slot-scope="scope">
<div>{{ moment(scope.row.creationTime).format("yyyy-MM-DD") }}</div>
</template>
</el-table-column>
<el-table-column prop="creatorName" label="登记人" min-width="80" align="center" />
<el-table-column prop="creationTime" label="登记日期" min-width="100" align="center">
<el-table-column
prop="creatorName"
label="登记人"
min-width="80"
align="center"
/>
<el-table-column
prop="creationTime"
label="登记日期"
min-width="100"
align="center"
>
<template slot-scope="scope">
<div>{{ moment(scope.row.creationTime).format("yyyy-MM-DD") }}</div>
</template>
</el-table-column>
</el-table>
</div>
<div style="width: 120px;margin-top: 50px">
<div style="width: 120px; margin-top: 50px">
<div style="margin-left: 10px">
<el-button class="commonbutton" type="primary" @click="btnAdd" >新增随访</el-button>
<el-button class="commonbutton" type="primary" @click="btnAdd"
>新增随访</el-button
>
</div>
<!-- <div style="margin: 10px;">
<el-button class="commonbutton" type="primary" @click="btnEdit">编辑随访</el-button>
</div> -->
<div style="margin: 10px;">
<el-button class="commonbutton" type="primary" @click="btnDel" >删除随访</el-button>
</div>
<div style="margin: 10px">
<el-button class="commonbutton" type="primary" @click="btnDel"
>删除随访</el-button
>
</div>
</div>
<el-dialog
:title="title == 1 ? '新增' : '修改'"
@ -51,38 +100,26 @@
<el-row>
<el-col :span="6">
<el-form-item label="编号">
<el-input
v-model="form.id"
style="width: 65%"
disabled
size="small"
></el-input>
<el-input v-model="form.id" disabled size="small"></el-input>
</el-form-item>
</el-col>
<el-col :span="6">
<el-form-item label="随访模式">
<el-select
v-model="form.followUpMode"
placeholder="请选择"
size="small"
>
<el-option
v-for="item in followUpMode"
:key="item.id"
:label="item.displayName"
:value="item.id"
/>
</el-select>
<el-col :span="4">
<el-form-item label="间隔天数">
<el-input v-model="form.intervalDays" size="small"></el-input>
</el-form-item>
</el-col>
<el-col :span="4">
<el-form-item label="生成次数">
<el-input v-model="form.generateCount" size="small"></el-input>
</el-form-item>
</el-col>
<el-col :span="4">
<el-form-item label="截止时间" v-if="form.followUpMode == 0">
<el-form-item label="开始时间">
<el-date-picker
type="datetime"
placeholder="选择日期时间"
size="small"
v-model="form.endDate"
value-format="yyyy-MM-dd HH:mm:ss"
v-model="form.startDate"
value-format="yyyy-MM-dd"
editable
style="width: 177px"
>
@ -90,19 +127,6 @@
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="24">
<el-form-item
:label="form.followUpMode == 0 ? 'corn表达式' : '生成天数'"
>
<!-- <el-input
v-model="form.parmValue"
size="small"
></el-input> -->
<el-input v-model="form.modeValue"></el-input>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="24">
<el-form-item label="短信内容">
@ -178,68 +202,43 @@ export default {
return {
phoneFollowUp: [], // 访
curRow: {},
dialogVisible:false,
dialogVisible: false,
form: {
followUpMode:"",
modeValue:"",
content:"",
endDate:""
startDate:"",
intervalDays:"",
generateCount:"",
content:""
},
followUpMode: [
{
id: "0",
displayName: "corn表达式",
},
{
id: "1",
displayName: "按天",
},
{
id: "2",
displayName: "按周",
},
{
id: "3",
displayName: "按月",
},
{
id: "4",
displayName: "按年",
},
],
title: "",
};
},
created() {
},
created() {},
updated() {
this.$nextTick(() => {
this.$refs['phoneFollowUp'].doLayout()
})
this.$refs["phoneFollowUp"].doLayout();
});
},
//
mounted() {
this.dictInit()
this.dictInit();
},
computed: {
...mapState(["window", "dataTransOpts", "dict", "patientRegister"]),
},
methods: {
dddw, moment,
dddw,
moment,
//
dictInit() {
//
postapi('/api/app/Asbitem/GetSimpleAsbitemWithDetails')
.then(res => {
if (res.code > -1) this.asbItems = res.data
})
postapi("/api/app/Asbitem/GetSimpleAsbitemWithDetails").then((res) => {
if (res.code > -1) this.asbItems = res.data;
});
},
getLists() {
postapi("/api/app/SmsSend/GetList", {
@ -253,75 +252,58 @@ export default {
},
addoredit() {
if (this.title == 1) {
if (this.form.followUpMode == "") {
this.$message.warning("请选择随访模式");
} else if (this.form.followUpMode == 0 && this.form.modeValue == "") {
this.$message.warning("请输入corn表达式");
} else if (this.form.followUpMode == 0 && this.form.endDate == "") {
this.$message.warning("请选择截止时间");
} else if (this.form.followUpMode != 0 && this.form.modeValue == "") {
this.$message.warning("请输入生成天数");
}else if (this.form.content== "") {
this.$message.warning("请输入短信内容");
} else {
postapi("/api/app/SmsSend/AutoCreate", {
followUpId: this.dataTransOpts.tableS.patient_register.followUpId,
followUpMode: this.form.followUpMode,
modeValue: this.form.modeValue,
endDate: this.form.endDate,
content: this.form.content
}).then((res) => {
if (res.code > -1) {
this.getLists();
this.dialogVisible = false;
}
});
}
}else{
postapi("/api/app/PhoneFollowUp/Update", {
phoneFollowUpId: this.form.id,
planFollowDate: this.form.planFollowDate,
followUpContent: this.form.followUpContent,
replyContent: this.form.replyContent,
isComplete:this.form.isComplete
}).then((res) => {
if (res.code > -1) {
this.getLists();
this.dialogVisible = false;
}
});
if (this.form.intervalDays == "") {
this.$message.warning("请输入间隔天数");
} else if (this.form.startDate == "") {
this.$message.warning("请选择开始时间");
} else if (this.form.generateCount == "") {
this.$message.warning("请输入生成天数");
} else if (this.form.content == "") {
this.$message.warning("请输入短信内容");
} else {
postapi("/api/app/SmsSend/AutoCreate", {
followUpId: this.dataTransOpts.tableS.patient_register.followUpId,
intervalDays: this.form.intervalDays,
startDate: this.form.startDate,
generateCount: this.form.generateCount,
content: this.form.content,
}).then((res) => {
if (res.code > -1) {
this.getLists();
this.dialogVisible = false;
}
});
}
}
},
//
//
setColor(checkCompleteFlag) {
let color = "#52555F"
let color = "#52555F";
switch (checkCompleteFlag) {
case '0':
color = "#FF5054"
case "0":
color = "#FF5054";
break;
case '2':
color = "#396FFA"
case "2":
color = "#396FFA";
break;
default:
break;
}
return color
return color;
},
//
btnAdd(){
btnAdd() {
this.dialogVisible = true;
this.title = 1;
this.form = this.$options.data().form;
},
//
btnEdit(){
},
btnEdit() {},
//
btnDel(){
btnDel() {
if (this.curRow.id == undefined) {
this.$message.warning("请选择删除的数据");
} else {
@ -333,11 +315,11 @@ export default {
confirmButtonClass: "commonbutton",
})
.then(() => {
postapi("/api/app/SmsSend/Delete",{
smsSendId:this.curRow.id
postapi("/api/app/SmsSend/Delete", {
smsSendId: this.curRow.id,
}).then((res) => {
if (res.code != -1) {
this.curRow=this.$options.data().curRow
this.curRow = this.$options.data().curRow;
this.getLists();
//this.$message.success("");
}
@ -346,9 +328,6 @@ export default {
.catch(() => {});
}
},
},
//
@ -357,12 +336,14 @@ export default {
"dataTransOpts.refresh.register_check_asbitem.M": {
// immediate:true,
handler(newVal, oldVal) {
console.log(`watch 人员登记 newVal:${newVal} oldVal:${oldVal} registerCheckId: ${this.dataTransOpts.tableS.patient_register.id}`);
// if (newVal != oldVal)
console.log(
`watch 人员登记 newVal:${newVal} oldVal:${oldVal} registerCheckId: ${this.dataTransOpts.tableS.patient_register.id}`
);
// if (newVal != oldVal)
this.getLists();
}
},
},
}
},
};
</script>
<style scoped>

0
src/components/report/AppletRegisterInfo.vue

12
src/router/index.js

@ -533,6 +533,12 @@ const routes = [{
component: () =>
import ("../components/report/AppointQuery.vue"),
},
{
path: "/AppletRegisterInfo",
name: "小程序注册信息查询",
component: () =>
import ("../components/report/AppletRegisterInfo.vue"),
},
{
path: "/NationHealthReport",
name: "上报国家平台数据",
@ -610,6 +616,12 @@ const routes = [{
component: () =>
import ("../views/customerReport/unitSettlement.vue")
},
{
path: "/unitStatistics",
name: "单位体检统计",
component: () =>
import ("../views/customerReport/unitStatistics.vue")
},
//---------------------- 工作量登记 ----------------------
{
path: "/registrar",

337
src/views/customerReport/unitStatistics.vue

@ -0,0 +1,337 @@
<template>
<div class="box">
<div>
<div class="middlebox">
<div class="contenttitle">
客户报表 /
<span class="contenttitleBold">单位体检统计</span>
</div>
</div>
<div :style="'display: block;'">
<div
style="
background-color: #fff;
padding: 15px;
border-radius: 8px;
display: flex;
flex-wrap: wrap;
margin-bottom: 10px;
height: 35px;
margin-top: 7px;
"
>
<div class="query">
<span>体检单位</span>
<el-cascader
v-model="customerOrgIds"
@change="onchange"
placeholder="请选择单位"
:options="patientRegister.customerOrgTreeAll"
:props="{
value: 'id',
label: 'displayName',
children: 'treeChildren',
expandTrigger: 'hover',
multiple: true,
emitPath:false,
checkStrictly:true
}"
filterable
size="small"
collapse-tags
></el-cascader>
</div>
<div class="query">
<span>开始日期</span>
<el-date-picker
type="date"
placeholder="选择开始日期"
size="small"
v-model="startDate"
value-format="yyyy-MM-dd"
editable
style="width: 177px;"
>
</el-date-picker>
</div>
<div class="query">
<span>结束日期</span>
<el-date-picker
type="date"
placeholder="选择结束日期"
size="small"
v-model="endDate"
value-format="yyyy-MM-dd"
editable
style="width: 177px;"
>
</el-date-picker>
</div>
<div class="query">
<el-button @click="btnQuery" size="small" class="commonbutton"
>查询</el-button
>
</div>
<div class="query">
<el-button @click="handleExport" size="small" class="commonbutton"
>导出excel</el-button
>
</div>
<div class="query">
<el-button @click="onPrint" size="small" class="commonbutton"
>打印</el-button
>
</div>
</div>
<div
ref="imageDom"
style="background-color: #fff; padding: 15px; border-radius: 8px"
>
<el-table
:data="dataList"
border
width="45%"
:height="
flag
? window.pageHeight < 600
? 415
: window.pageHeight - 185 - 20
: ''
"
row-key="id"
highlight-current-row
ref="dataList"
:row-class-name="tableRowClassName"
id="table"
show-summary
:summary-method="getSummaries"
>
<el-table-column prop="customerOrgName" label="单位" />
<el-table-column prop="medicalStartDate" label="体检开始日期" />
<el-table-column prop="registerCount" label="登记人数" />
<el-table-column prop="checkCount" label="实检人数" />
<el-table-column prop="registerStandardAmount" label="登记总金额" />
<el-table-column
prop="registerChargeAmount"
label="登记折后总金额"
/>
<el-table-column prop="checkStandardAmount" label="实检总金额" />
<el-table-column prop="checkChargeAmount" label="实检折后总金额" />
<el-table-column prop="checkItemStandardAmount" label="实检项目金额" />
<el-table-column prop="checkItemChargeAmount" label="实检项目折后总金额" />
</el-table>
</div>
</div>
</div>
</div>
</template>
<script>
import moment from "moment";
import { mapState, mapActions } from "vuex";
import { getapi, postapi, putapi, deletapi } from "@/api/api";
import {
dddw,
objCopy,
arrayReduce,
arrayExistObj,
tcdate,
} from "@/utlis/proFunc";
import { exportToExcel } from "../../utlis/Export2Excel";
import html2canvas from "html2canvas";
import printJs from "print-js";
export default {
data() {
return {
dataList: [], //
startDate: "",
endDate: "",
customerOrgIds: [],
flag: true
};
},
created() {
this.dictInit();
},
//
mounted() {
this.getNowTime();
},
computed: {
...mapState(["window", "dict", "patientRegister", "report"]),
},
methods: {
moment,
dddw,
//
dictInit() {
//
getapi("/api/app/customerorg/getbycodeall").then((res) => {
if (res.code == 1) {
this.patientRegister.customerOrgTreeAll = res.data;
tcdate(this.patientRegister.customerOrgTreeAll);
}
});
console.log("patientRegister", this.patientRegister);
},
onchange(v) {
console.log(v)
},
tableRowClassName({ row, rowIndex }) {
switch (row.isCharge) {
case "N":
return "danger";
default:
return "";
}
},
getSummaries(param) {
const { columns, data } = param;
const sums = [];
columns.forEach((column, index) => {
if (index === 0) {
sums[index] = "合计";
return;
}
if (index === 1) {
sums[index] = data.length + " 人";
}
});
return sums;
},
getNowTime() {
var now = new Date();
var year = now.getFullYear(); //
var month = now.getMonth(); //
var date = now.getDate(); //
month = month + 1;
month = month.toString().padStart(2, "0");
date = date.toString().padStart(2, "0");
var defaultDate = `${year}-${month}-${date}`;
this.startDate = defaultDate;
this.endDate = defaultDate;
},
//
btnQuery() {
let that = this;
if (this.startDate == "") {
return this.$message({
message: "请先选择开始日期",
type: "error",
});
}
if (this.endDate == "") {
return this.$message({
message: "请先选择结束日期",
type: "error",
});
}
postapi(
"/api/app/CustomerReport/GetSummaryOfUnitCostsReport",{
customerOrgIds:that.customerOrgIds,
startDate:that.startDate,
endDate:that.endDate
}).then((res) => {
if (res.code != -1) {
that.dataList = res.data;
that.$nextTick(() => {
that.$refs.dataList.doLayout();
});
}
});
},
onPrint() {
this.flag = false;
this.$nextTick(() => {
let width = this.$refs.imageDom.style.width;
let cloneDom = this.$refs.imageDom.cloneNode(true);
let imageDom = this.$refs.imageDom;
cloneDom.style.position = "absolute";
cloneDom.style.top = "0px";
cloneDom.style.zIndex = "-1";
cloneDom.style.width = width;
console.log(cloneDom);
imageDom.appendChild(cloneDom);
html2canvas(cloneDom).then((canvas) => {
//
const url = canvas.toDataURL("image/png");
printJs({
printable: url,
type: "image",
documentTitle: "", //
style: "@page{size:auto;margin: 0cm 1cm 0cm 1cm;}", //
});
});
cloneDom.style.display = "none";
this.flag = true;
});
},
handleExport() {
exportToExcel("#table", "单位体检统计", false);
},
},
//
watch: {
//
// "patientRegister.query.times"(newVal, oldVal) {
// if (newVal != oldVal) {
// //alert('')
// this.query();
// }
// },
},
};
</script>
<style scoped>
@import "../../assets/css/global_button.css";
@import "../../assets/css/global_dialog.css";
@import "../../assets/css/global_table.css";
@import "../../assets/css/global_form.css";
@import "../../assets/css/global_input.css";
@import "../../assets/css/global.css";
.query {
margin-right: 10px;
display: flex;
justify-content: center;
align-items: center;
font-size: 14px;
color: #232748;
font-size: 400;
font-family: "NotoSansSC-Regular";
}
.box {
display: flex;
flex-direction: column;
}
::v-deep .el-input__inner {
/*text-align: center;*/
padding-left: 5px;
padding-right: 15px;
}
::v-deep .el-input__icon {
width: 15px;
/* 输入框下拉箭头或清除图标 默认 25 */
}
::v-deep .el-input-group__append {
padding: 0 5px;
/* 控件默认 0 20px;*/
}
::v-deep .el-icon-search:before {
color: #00f;
}
.query:last-child {
margin-right: 0;
}
::v-deep .el-cascader__search-input{
margin: 0 0 0 5px;
}
</style>
Loading…
Cancel
Save