From 028fddd36cc3189a042f0f8cb7d906477e5a4856 Mon Sep 17 00:00:00 2001
From: chenyc <501753378@qq.com>
Date: 星期三, 20 十一月 2024 19:12:57 +0800
Subject: [PATCH] 加方案功能
---
src/views/home/components/editDietary.vue | 90 +++++++++++++++++++++++++++++---------------
1 files changed, 59 insertions(+), 31 deletions(-)
diff --git a/src/views/home/components/editDietary.vue b/src/views/home/components/editDietary.vue
index a6365ec..46e29ba 100644
--- a/src/views/home/components/editDietary.vue
+++ b/src/views/home/components/editDietary.vue
@@ -2,7 +2,7 @@
<div class="dietarySurvey-item">
<el-dialog v-model="state.dialogTableVisible" title="膳食调查表" :fullscreen="true" width="100%">
<div class="container" style="width: 100%; height: 100%;overflow: auto;">
- <div>
+ <div id="printFrom1">
<div>
<el-form size="small">
<div style="width: 100%">
@@ -41,8 +41,8 @@
<el-form-item>
<el-radio-group class="elradiozdi" v-model="state.tableData.人员构成.type">
- <el-radio value="A">A:独居</el-radio>
- <el-radio value="B">B:家族</el-radio>
+ <el-radio value="独居">A:独居</el-radio>
+ <el-radio value="家族">B:家族</el-radio>
</el-radio-group>
</el-form-item>
@@ -64,9 +64,9 @@
<el-form-item>
<el-radio-group class="elradiozdi"
v-model="state.tableData.烹饪主要操作者.type">
- <el-radio value="A">A:自己</el-radio>
- <el-radio value="B">B:配偶</el-radio>
- <el-radio value="C">C:其他</el-radio>
+ <el-radio value="自己">A:自己</el-radio>
+ <el-radio value="配偶">B:配偶</el-radio>
+ <el-radio value="其他">C:其他</el-radio>
</el-radio-group>
</el-form-item>
@@ -87,9 +87,9 @@
<td colspan="3">
<el-form-item>
<el-radio-group class="elradiozdi" v-model="state.tableData.食材采购.type">
- <el-radio value="A">A:外采</el-radio>
- <el-radio value="B">B:家种</el-radio>
- <el-radio value="C">C:其他</el-radio>
+ <el-radio value="外采">A:外采</el-radio>
+ <el-radio value="家种">B:家种</el-radio>
+ <el-radio value="其他">C:其他</el-radio>
</el-radio-group>
</el-form-item>
@@ -108,8 +108,8 @@
<td colspan="3">
<el-form-item>
<el-radio-group class="elradiozdi" v-model="state.tableData.食物偏好.type">
- <el-radio value="A">A:有</el-radio>
- <el-radio value="B">B:无</el-radio>
+ <el-radio value="有">A:有</el-radio>
+ <el-radio value="无">B:无</el-radio>
</el-radio-group>
</el-form-item>
@@ -122,7 +122,7 @@
</td>
</tr>
<tr>
- <td class="6">
+ <td colspan="6">
5.三天饮食记录表(食材、份量)
</td>
</tr>
@@ -239,8 +239,8 @@
<td colspan="3">
<el-form-item>
<el-radio-group class="elradiozdi" v-model="state.tableData.外吃.type">
- <el-radio value="A">A:有</el-radio>
- <el-radio value="B">B:无</el-radio>
+ <el-radio value="有">A:有</el-radio>
+ <el-radio value="无">B:无</el-radio>
</el-radio-group>
</el-form-item>
@@ -315,6 +315,9 @@
:autosize="{ minRows: 1, maxRows: 6 }" placeholder="备注" />
</el-form-item>
</td>
+ <td colspan="3">
+
+ </td>
</tr>
<tr>
<td>
@@ -324,8 +327,8 @@
<el-form-item>
<el-radio-group class="elradiozdi" v-model="state.tableData.运动.type">
- <el-radio value="B">B:无</el-radio>
- <el-radio value="A">A:有</el-radio>
+ <el-radio value="无">B:无</el-radio>
+ <el-radio value="有">A:有</el-radio>
</el-radio-group>
<span>
<el-input v-model="state.tableData.运动.input1" type="textarea"
@@ -352,8 +355,8 @@
<el-form-item>
<el-radio-group class="elradiozdi" v-model="state.tableData.是否吸烟.type">
- <el-radio value="B">B:无</el-radio>
- <el-radio value="A">A:有</el-radio>
+ <el-radio value="无">B:无</el-radio>
+ <el-radio value="有">A:有</el-radio>
</el-radio-group>
<span>
<el-input v-model="state.tableData.是否吸烟.input1" type="textarea"
@@ -369,8 +372,8 @@
<el-form-item>
<el-radio-group class="elradiozdi" v-model="state.tableData.是否饮酒.type">
- <el-radio value="B">B:无</el-radio>
- <el-radio value="A">A:有</el-radio>
+ <el-radio value="无">B:无</el-radio>
+ <el-radio value="有">A:有</el-radio>
</el-radio-group>
<span>
<el-input v-model="state.tableData.是否饮酒.input1" type="textarea"
@@ -392,8 +395,8 @@
<td colspan="3">
<el-form-item>
<el-radio-group class="elradiozdi" v-model="state.tableData.易过敏体质.type">
- <el-radio value="A">A:否</el-radio>
- <el-radio value="B">B:是</el-radio>
+ <el-radio value="有">A:否</el-radio>
+ <el-radio value="是">B:是</el-radio>
</el-radio-group>
</el-form-item>
@@ -413,8 +416,8 @@
<el-form-item>
<el-radio-group class="elradiozdi"
v-model="state.tableData.胃肠道紊乱者.type">
- <el-radio value="A">A:否</el-radio>
- <el-radio value="B">B:是</el-radio>
+ <el-radio value="否">A:否</el-radio>
+ <el-radio value="是">B:是</el-radio>
</el-radio-group>
</el-form-item>
@@ -432,14 +435,13 @@
</td>
<td colspan="3">
<el-form-item>
- <el-radio-group class="elradiozdi"
- v-model="state.tableData.过敏食物.type">
+ <el-checkbox-group class="elradiozdi" v-model="state.tableData.过敏食物.type">
<el-checkbox value="鸡蛋">A:鸡蛋</el-checkbox>
<el-checkbox value="海鲜">B:海鲜</el-checkbox>
<el-checkbox value="坚果">C:坚果</el-checkbox>
<el-checkbox value="牛奶">D:牛奶</el-checkbox>
<el-checkbox value="其他">E:其他</el-checkbox>
- </el-radio-group>
+ </el-checkbox-group>
</el-form-item>
@@ -458,8 +460,8 @@
<td colspan="3">
<el-form-item>
<el-radio-group class="elradiozdi" v-model="state.tableData.宗教信仰.type">
- <el-radio value="A">A:否</el-radio>
- <el-radio value="B">B:是</el-radio>
+ <el-radio value="否">A:否</el-radio>
+ <el-radio value="是">B:是</el-radio>
</el-radio-group>
</el-form-item>
@@ -549,6 +551,15 @@
<el-button type="primary" @click="onSubmit">
保存
</el-button>
+ <el-button v-if="state.viewInfo.id" type="primary" v-print="'#printFrom1'">
+ <el-icon><Printer /></el-icon>
+ 打印
+ </el-button>
+ <el-button type="primary" v-if="state.viewInfo.id" @click="generatePDF">
+ <el-icon><Position /></el-icon>
+ 导出
+ </el-button>
+
</div>
</template>
</el-dialog>
@@ -559,6 +570,7 @@
</template>
<script setup lang="ts" name="visualizingLinkDemo2">
+import html2pdf from 'html2pdf.js';
import { reactive, onMounted, onUnmounted, ref } from 'vue';
import { formatDate } from '/@/utils/formatTime';
import { NextLoading } from '/@/utils/loading';
@@ -625,7 +637,7 @@
是否饮酒:{ type: '',input1: ''},
易过敏体质: {type: '', input1: '',},
胃肠道紊乱者: {type: '', input1: '',},
- 过敏食物: {type: '', input1: '',},
+ 过敏食物: {type: [], input1: '',},
宗教信仰: {type: '', input1: '',},
过敏症状表现为以下哪些: {type: '', input1: '',},
您是如何知道自己食物过敏: {type: '', input1: '',},
@@ -651,6 +663,22 @@
const funhui=()=>{
state.dialogTableVisible=false
+}
+// 打印
+const onPrint=()=>{
+
+}
+const generatePDF=()=> {
+ const element = document.getElementById('printFrom1');
+ const opt = {
+ margin: 10,
+ filename: `${state.tableData.表名}.pdf`,
+ image: { type: 'jpeg', quality: 0.98 },
+ html2canvas: { scale: 2 },
+ jsPDF: { unit: 'mm', format: 'a4', orientation: 'portrait' }
+ };
+ html2pdf().set(opt).from(element).save();
+
}
const onSubmit = () => {
console.log('submit!')
@@ -734,7 +762,7 @@
是否饮酒:{ type: '',input1: ''},
易过敏体质: {type: '', input1: '',},
胃肠道紊乱者: {type: '', input1: '',},
- 过敏食物: {type: '', input1: '',},
+ 过敏食物: {type: [], input1: '',},
宗教信仰: {type: '', input1: '',},
过敏症状表现为以下哪些: {type: '', input1: '',},
您是如何知道自己食物过敏: {type: '', input1: '',},
--
Gitblit v1.8.0