From 9bbb2946699515807256dfb30ab57359f4fdf563 Mon Sep 17 00:00:00 2001
From: chenyc <501753378@qq.com>
Date: 星期一, 24 三月 2025 16:09:43 +0800
Subject: [PATCH] gx优化
---
src/views/home/components/editDietary.vue | 884 ++++++++--------------------------------------------------
1 files changed, 134 insertions(+), 750 deletions(-)
diff --git a/src/views/home/components/editDietary.vue b/src/views/home/components/editDietary.vue
index 42f2c5b..60c4e8c 100644
--- a/src/views/home/components/editDietary.vue
+++ b/src/views/home/components/editDietary.vue
@@ -1,13 +1,13 @@
<template>
<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 id="printFrom1">
+ <el-dialog v-model="state.dialogTableVisible" title="膳食生活调查表" :fullscreen="true" width="100%">
+ <div style="width: 100%; height: 100%;overflow: auto;">
+ <div ref="printRef">
<div>
<el-form size="small">
<div style="width: 100%">
<table id="tabledome" class="gridtable">
-
+
<tr>
<th colspan="2">
<el-form-item label="初次调查日期">
@@ -128,27 +128,27 @@
1.常吃的主食
</td>
<td colspan="5">
- <el-form-item>
- <el-radio-group
+ <el-form-item>
+ <el-checkbox-group
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="薯类">B.薯类</el-checkbox>
- <el-checkbox value="其它">E.其它</el-checkbox>
+ <el-checkbox value="精米面类">A.精米面类</el-checkbox>
+ <el-checkbox value="杂豆类">B.杂豆类</el-checkbox>
+ <el-checkbox value="粗粮">C.粗粮</el-checkbox>
+ <el-checkbox value="薯类">B.薯类</el-checkbox>
+ <el-checkbox value="其它">E.其它</el-checkbox>
- </el-radio-group>
+ </el-checkbox-group >
<span>食用份量</span>
<span>
- <input style="width: 50px;" v-model="state.tableData.常吃的主食.食用份量"/> 克/天
+ <input :style="{width:state.tableData?.常吃的主食?.食用份量?.length?state.tableData?.常吃的主食?.食用份量?.length*15+'px':'50px'}" v-model="state.tableData.常吃的主食.食用份量"/> 克/天
</span>
<span>食用频次</span>
- <input style="width: 50px;" v-model="state.tableData.常吃的主食.食用频次"/> 次/周
+ <input :style="{width:state.tableData?.常吃的主食?.食用频次?.length?state.tableData?.常吃的主食?.食用频次?.length*15+'px':'50px'}" v-model="state.tableData.常吃的主食.食用频次"/> 次/周
</el-form-item>
</td>
</tr>
@@ -158,24 +158,25 @@
</td>
<td colspan="5">
<el-form-item>
- <el-radio-group v-model="state.tableData.常吃的蔬菜.type">
+ <el-checkbox-group 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="鲜豆">B.鲜豆</el-checkbox>
<el-checkbox value="菌藻">E.菌藻</el-checkbox>
- </el-radio-group>
+ </el-checkbox-group >
+ <br/>
<span>食用份量</span>
<span>
- <input style="width: 50px;" v-model="state.tableData.常吃的蔬菜.食用份量"/> 克/天
+ <input :style="{width:state.tableData?.常吃的蔬菜?.食用份量?.length?state.tableData?.常吃的蔬菜?.食用份量?.length*15+'px':'50px'}" v-model="state.tableData.常吃的蔬菜.食用份量"/> 克/天
</span>
<span>食用频次</span>
- <input style="width: 50px;" v-model="state.tableData.常吃的蔬菜.食用频次"/> 次/周
+ <input :style="{width:state.tableData?.常吃的蔬菜?.食用频次?.length?state.tableData?.常吃的蔬菜?.食用频次?.length*15+'px':'50px'}" v-model="state.tableData.常吃的蔬菜.食用频次"/> 次/周
</el-form-item>
@@ -188,24 +189,24 @@
<td colspan="5">
<el-form-item>
- <el-radio-group v-model="state.tableData.常吃的肉类.type">
+ <el-checkbox-group 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>
<span>食用份量</span>
<span>
- <input style="width: 50px;" v-model="state.tableData.常吃的肉类.食用份量"/> 克/天
+ <input :style="{width:state.tableData?.常吃的肉类?.食用份量?.length?state.tableData?.常吃的肉类?.食用份量?.length*15+'px':'50px'}" v-model="state.tableData.常吃的肉类.食用份量"/> 克/天
</span>
<span>食用频次</span>
- <input style="width: 50px;" v-model="state.tableData.常吃的肉类.食用频次"/> 次/周
+ <input :style="{width:state.tableData?.常吃的肉类?.食用频次?.length?state.tableData?.常吃的肉类?.食用频次?.length*15+'px':'50px'}" v-model="state.tableData.常吃的肉类.食用频次"/> 次/周
</el-form-item>
@@ -217,18 +218,18 @@
</td>
<td colspan="5">
<el-form-item>
- <input style="width: 250px;" v-model="state.tableData.常吃的水果.食用份量"/> ;
+ <input style="width: 250px;" v-model="state.tableData.常吃的水果.input"/> ;
<span>食用份量</span>
<span>
- <input style="width: 50px;" v-model="state.tableData.常吃的水果.食用份量"/> 克/天;
+ <input :style="{width:state.tableData?.常吃的水果?.食用份量?.length?state.tableData?.常吃的水果?.食用份量?.length*15+'px':'50px'}" v-model="state.tableData.常吃的水果.食用份量"/> 克/天;
</span>
<span>食用频次</span>
- <input style="width: 50px;" v-model="state.tableData.常吃的水果.食用频次"/> 次/周
+ <input :style="{width:state.tableData?.常吃的水果?.食用份量?.length?state.tableData?.常吃的水果?.食用频次?.length*15+'px':'50px'}" v-model="state.tableData.常吃的水果.食用频次"/> 次/周
</el-form-item>
</td>
@@ -256,12 +257,12 @@
<span>食用份量</span>
<span>
- <input style="width: 50px;" v-model="state.tableData.常吃的大豆及其制品是.食用份量"/> 克/天
+ <input :style="{width:state.tableData?.常吃的大豆及其制品是?.食用份量?.length?state.tableData?.常吃的大豆及其制品是?.食用份量?.length*15+'px':'50px'}" v-model="state.tableData.常吃的大豆及其制品是.食用份量"/> 克/天
</span>
<span>食用频次</span>
- <input style="width: 50px;" v-model="state.tableData.常吃的大豆及其制品是.食用频次"/> 次/周
+ <input :style="{width:state.tableData?.常吃的大豆及其制品是?.食用频次?.length?state.tableData?.常吃的大豆及其制品是?.食用频次?.length*15+'px':'50px'}" v-model="state.tableData.常吃的大豆及其制品是.食用频次"/> 次/周
</el-form-item>
@@ -276,18 +277,18 @@
<td colspan="5">
<el-form-item>
- <input style="width: 250px;" v-model="state.tableData.坚果摄入量.食用份量"/> ;
+ <input style="width: 250px;" v-model="state.tableData.坚果摄入量.type"/> ;
<span>食用份量</span>
<span>
- <input style="width: 50px;" v-model="state.tableData.坚果摄入量.食用份量"/> 克/天;
+ <input :style="{width:state.tableData?.坚果摄入量?.食用份量?.length?state.tableData?.坚果摄入量?.食用份量?.length*15+'px':'50px'}" v-model="state.tableData.坚果摄入量.食用份量"/> 克/天;
</span>
<span>食用频次</span>
- <input style="width: 50px;" v-model="state.tableData.坚果摄入量.食用频次"/> 次/周
+ <input :style="{width:state.tableData?.坚果摄入量?.食用频次?.length?state.tableData?.坚果摄入量?.食用频次?.length*15+'px':'50px'}" style="width: 50px;" v-model="state.tableData.坚果摄入量.食用频次"/> 次/周
</el-form-item>
@@ -316,13 +317,13 @@
<span>食用份量</span>
<span>
- <input style="width: 50px;" v-model="state.tableData.奶类摄入量.食用份量"/> 克/天
+ <input :style="{width:state.tableData?.奶类摄入量?.食用份量?.length?state.tableData?.奶类摄入量?.食用份量?.length*15+'px':'50px'}" v-model="state.tableData.奶类摄入量.食用份量"/> 克/天
</span>
<span>食用频次</span>
- <input style="width: 50px;" v-model="state.tableData.奶类摄入量.食用频次"/> 次/周
+ <input :style="{width:state.tableData?.奶类摄入量?.食用频次?.length?state.tableData?.奶类摄入量?.食用频次?.length*15+'px':'50px'}" v-model="state.tableData.奶类摄入量.食用频次"/> 次/周
</el-form-item>
</td>
</tr>
@@ -451,6 +452,7 @@
</el-form-item>
</td>
</tr>
+ <div class="page-break"></div>
<tr>
<td>
12.零食及其他
@@ -475,13 +477,13 @@
</el-checkbox>
<el-checkbox value="辛辣食品">辛辣食品
</el-checkbox>
- <el-checkbox value="石炭酉饮米斗">石炭酉饮米斗
+ <el-checkbox value="碳酸饮料">碳酸饮料
</el-checkbox>
</el-checkbox-group>
<span>
- <input style="width: 100px;" v-model="state.tableData.零食及其他.备注"/>
+ <input style="width: 250px;" v-model="state.tableData.零食及其他.备注"/>
</span>
</el-form-item>
@@ -529,7 +531,7 @@
</el-radio>
<el-radio value="10-20分钟">10-20分钟
</el-radio>
- <el-radio value="大于20分钟">大于20分钟
+ <el-radio value=">20分钟">>20分钟
</el-radio>
</el-radio-group>
@@ -623,111 +625,51 @@
</td>
</tr>
<tr>
- <td>
- (非)透析日时间
- </td>
- <td>早餐</td>
- <td>加餐</td>
- <td>午餐</td>
- <td>加餐</td>
- <td>晚餐</td>
- </tr>
- <tr>
- <td>
- <el-form-item label="透析日一">
- <el-date-picker v-model="state.tableData.三天饮食记录表.透析日1.日期" type="date" style="width: 100px;"
- placeholder="" format="MM/DD" value-format="YYYY-MM-DD" />
- </el-form-item>
- </td>
- <td>
- <el-form-item>
- <el-input v-model="state.tableData.三天饮食记录表.透析日1.早餐" placeholder="" />
- </el-form-item>
- </td>
- <td>
- <el-form-item>
- <el-input v-model="state.tableData.三天饮食记录表.透析日1.加餐1" placeholder="" />
- </el-form-item>
- </td>
- <td>
- <el-form-item>
- <el-input v-model="state.tableData.三天饮食记录表.透析日1.午餐" placeholder="" />
- </el-form-item>
- </td>
- <td>
- <el-form-item>
- <el-input v-model="state.tableData.三天饮食记录表.透析日1.加餐2" placeholder="" />
- </el-form-item>
- </td>
- <td><el-form-item>
- <el-input v-model="state.tableData.三天饮食记录表.透析日1.晚餐" placeholder="" />
- </el-form-item>
+ <td colspan="6" style="background-color: antiquewhite;text-align:center;font-weight: 500;">
+ 24小时饮食回顾记录
</td>
</tr>
<tr>
- <td>
- <el-form-item label="非透析日">
- <el-date-picker v-model="state.tableData.三天饮食记录表.非透析日.日期" type="date" style="width: 100px;"
- placeholder="" format="MM/DD" value-format="YYYY-MM-DD" />
- </el-form-item>
- </td>
- <td>
- <el-form-item>
- <el-input v-model="state.tableData.三天饮食记录表.非透析日.早餐" placeholder="" />
- </el-form-item>
- </td>
- <td>
- <el-form-item>
- <el-input v-model="state.tableData.三天饮食记录表.非透析日.加餐1" placeholder="" />
- </el-form-item>
- </td>
- <td>
- <el-form-item>
- <el-input v-model="state.tableData.三天饮食记录表.非透析日.午餐" placeholder="" />
- </el-form-item>
- </td>
- <td>
- <el-form-item>
- <el-input v-model="state.tableData.三天饮食记录表.非透析日.加餐2" placeholder="" />
- </el-form-item>
- </td>
- <td><el-form-item>
- <el-input v-model="state.tableData.三天饮食记录表.非透析日.晚餐" placeholder="" />
- </el-form-item>
- </td>
+
+ <td style="text-align: center;">早餐</td>
+ <td style="text-align: center;">加餐</td>
+ <td style="text-align: center;">午餐</td>
+ <td style="text-align: center;">加餐</td>
+ <td style="text-align: center;">晚餐</td>
+ <td style="text-align: center;">加餐</td>
</tr>
<tr>
<td>
- <el-form-item label="透析日二">
- <el-date-picker v-model="state.tableData.三天饮食记录表.透析日2.日期" type="date" style="width: 100px;"
- placeholder="" format="MM/DD" value-format="YYYY-MM-DD" />
+ <el-form-item>
+ <el-input type="textarea" :autosize="{ minRows: 2, maxRows: 6 }" v-model="state.tableData.二十四小时饮食回顾记录.早餐" placeholder="" />
</el-form-item>
</td>
<td>
<el-form-item>
- <el-input v-model="state.tableData.三天饮食记录表.透析日2.早餐" placeholder="" />
+ <el-input type="textarea" :autosize="{ minRows: 2, maxRows: 6 }" v-model="state.tableData.二十四小时饮食回顾记录.早加餐" placeholder="" />
</el-form-item>
</td>
<td>
<el-form-item>
- <el-input v-model="state.tableData.三天饮食记录表.透析日2.加餐1" placeholder="" />
+ <el-input type="textarea" :autosize="{ minRows: 2, maxRows: 6 }" v-model="state.tableData.二十四小时饮食回顾记录.午餐" placeholder="" />
</el-form-item>
</td>
<td>
<el-form-item>
- <el-input v-model="state.tableData.三天饮食记录表.透析日2.午餐" placeholder="" />
+ <el-input type="textarea" :autosize="{ minRows: 2, maxRows: 6 }" v-model="state.tableData.二十四小时饮食回顾记录.午加餐" placeholder="" />
</el-form-item>
</td>
<td>
<el-form-item>
- <el-input v-model="state.tableData.三天饮食记录表.透析日2.加餐2" placeholder="" />
+ <el-input type="textarea" :autosize="{ minRows: 2, maxRows: 6 }" v-model="state.tableData.二十四小时饮食回顾记录.晚餐" placeholder="" />
</el-form-item>
</td>
- <td><el-form-item>
- <el-input v-model="state.tableData.三天饮食记录表.透析日2.晚餐" placeholder="" />
+ <td>
+ <el-form-item>
+ <el-input type="textarea" :autosize="{ minRows: 2, maxRows: 6 }" v-model="state.tableData.二十四小时饮食回顾记录.晚加餐" placeholder="" />
</el-form-item>
</td>
- </tr>
+ </tr>
<tr>
<td style="background-color: antiquewhite;">
饮食问题
@@ -801,7 +743,14 @@
v-model="state.tableData.饮酒习惯.type">
<el-radio value="是">是
<span>
- <input style="width: 50px;" v-model="state.tableData.饮酒习惯.食用频次1"/> 根/天
+ 酒类
+ </span>
+ <span>
+ <input style="width: 200px;" v-model="state.tableData.饮酒习惯.备注"/>
+ </span>
+ 食用频次:
+ <span>
+ <input style="width: 50px;" v-model="state.tableData.饮酒习惯.食用频次1"/> ml/天
</span>
<span>
<input style="width: 50px;" v-model="state.tableData.饮酒习惯.食用频次2"/> 次/周
@@ -810,12 +759,7 @@
<el-radio value="否">否
</el-radio>
</el-radio-group>
- <span>
- 酒类
- </span>
- <span>
- <input style="width: 200px;" v-model="state.tableData.饮酒习惯.备注"/>
- </span>
+
</el-form-item>
</td>
</tr>
@@ -949,431 +893,6 @@
</el-form-item>
</td>
</tr>
- <tr>
- <th colspan="6">
- 食物过敏源调查
- </th>
- </tr>
- <tr>
- <td>
- 易过敏体质
- </td>
- <td colspan="3">
- <el-form-item>
- <el-radio-group class="elradiozdi" v-model="state.tableData.食物过敏源调查.易过敏体质.type">
- <el-radio value="有">A:否</el-radio>
- <el-radio value="是">B:是</el-radio>
- </el-radio-group>
- </el-form-item>
-
- </td>
- <td colspan="2">
- <el-form-item>
- <el-input v-model="state.tableData.食物过敏源调查.易过敏体质.备注" type="textarea"
- :autosize="{ minRows: 1, maxRows: 6 }" placeholder="备注" />
- </el-form-item>
- </td>
- </tr>
-
- <tr>
- <td>
- 过敏食物
- </td>
- <td colspan="3">
- <el-form-item>
- <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-checkbox-group>
-
- </el-form-item>
-
- </td>
- <td colspan="2">
- <el-form-item>
- <el-input v-model="state.tableData.食物过敏源调查.过敏食物.备注" type="textarea"
- :autosize="{ minRows: 1, maxRows: 6 }" placeholder="备注" />
- </el-form-item>
- </td>
- </tr>
- <tr>
- <td>
- 宗教信仰
- </td>
- <td colspan="3">
- <el-form-item>
- <el-radio-group class="elradiozdi" v-model="state.tableData.食物过敏源调查.宗教信仰.type">
- <el-radio value="否">A:否</el-radio>
- <el-radio value="是">B:是</el-radio>
- </el-radio-group>
- </el-form-item>
-
- </td>
- <td colspan="2">
- <el-form-item>
- <el-input v-model="state.tableData.食物过敏源调查.宗教信仰.备注" type="textarea"
- :autosize="{ minRows: 1, maxRows: 6 }" placeholder="备注" />
- </el-form-item>
- </td>
- </tr>
- <tr>
- <td>
- 过敏症状表现为以下哪些
- </td>
- <td colspan="3">
- <el-form-item>
-
- <el-radio-group class="elradiozdi"
- v-model="state.tableData.食物过敏源调查.过敏症状表现为以下哪些.type">
- <el-checkbox value="消化问题">消化问题</el-checkbox>
- <el-checkbox value="皮肤问题">皮肤问题</el-checkbox>
- <el-checkbox value="眼睛问题">眼睛问题</el-checkbox>
- <el-checkbox value="呼吸道问题">呼吸道问题</el-checkbox>
-
- </el-radio-group>
-
- </el-form-item>
-
- </td>
- <td colspan="2">
- <el-form-item>
- <el-input v-model="state.tableData.食物过敏源调查.过敏症状表现为以下哪些.备注" type="textarea"
- :autosize="{ minRows: 1, maxRows: 6 }" placeholder="备注" />
- </el-form-item>
- </td>
- </tr>
- <tr>
- <td>
- 诊断过敏形式
- </td>
- <td colspan="3">
- <el-form-item>
-
- <el-radio-group class="elradiozdi" v-model="state.tableData.食物过敏源调查.诊断过敏形式.type">
- <el-radio value="自行诊断">自行诊断</el-radio>
- <el-radio value="医生">医生</el-radio>
- <el-radio value="其他形式">其他形式</el-radio>
- </el-radio-group>
-
- </el-form-item>
-
- </td>
- <td colspan="2">
- <el-form-item>
- <el-input v-model="state.tableData.食物过敏源调查.诊断过敏形式.备注" type="textarea"
- :autosize="{ minRows: 1, maxRows: 6 }" placeholder="备注" />
- </el-form-item>
- </td>
- </tr>
- <tr>
- <td>
- 注意事项
- </td>
- <td colspan="5">
- <el-form-item>
- <el-input v-model="state.tableData.食物过敏源调查.注意事项.备注" type="textarea"
- :autosize="{ minRows: 1, maxRows: 6 }" placeholder="备注" />
- </el-form-item>
-
- </td>
-
- </tr>
- <tr>
- <th colspan="6">
- 胃肠功能调查
- </th>
- </tr>
- <tr>
- <td rowspan="4">
- 生活饮食习惯
- </td>
- <td colspan="4" >
- <el-form-item label="喝咖啡、茶或碳酸饮料的习惯">
- <el-radio-group class="elradiozdi" v-model="state.tableData.生活饮食习惯.喝咖啡茶或碳酸饮料的习惯.type">
- <el-radio value="否">A:否</el-radio>
- <el-radio value="是">B:是</el-radio>
-
- </el-radio-group>
- </el-form-item>
- </td>
- <td colspan="4" >
- <el-form-item >
- <el-input v-model="state.tableData.生活饮食习惯.喝咖啡茶或碳酸饮料的习惯.备注" type="textarea"
- :autosize="{ minRows: 1, maxRows: 6 }" placeholder="备注" />
- </el-form-item>
- </td>
- </tr>
- <tr>
- <td colspan="4" >
- <el-form-item label="饮酒习惯">
-
- <el-radio-group class="elradiozdi" v-model="state.tableData.生活饮食习惯.饮酒习惯.type">
- <el-radio value="否">A:否</el-radio>
- <el-radio value="是">B:是</el-radio>
-
- </el-radio-group>
- </el-form-item>
- </td>
- <td colspan="4" >
- <el-form-item >
- <el-input v-model="state.tableData.生活饮食习惯.饮酒习惯.备注" type="textarea"
- :autosize="{ minRows: 1, maxRows: 6 }" placeholder="备注" />
- </el-form-item>
- </td>
- </tr>
- <tr>
- <td colspan="4" >
- <el-form-item label="经常食用生冷食物">
-
- <el-radio-group class="elradiozdi" v-model="state.tableData.生活饮食习惯.经常食用生冷食物.type">
- <el-radio value="否">A:否</el-radio>
- <el-radio value="是">B:是</el-radio>
-
- </el-radio-group>
- </el-form-item>
- </td>
- <td colspan="4" >
- <el-form-item >
- <el-input v-model="state.tableData.生活饮食习惯.经常食用生冷食物.备注" type="textarea"
- :autosize="{ minRows: 1, maxRows: 6 }" placeholder="备注" />
- </el-form-item>
- </td>
- </tr>
- <tr>
- <td colspan="4" >
- <el-form-item label="存在蔬菜摄入量较少">
-
- <el-radio-group class="elradiozdi" v-model="state.tableData.生活饮食习惯.存在蔬菜摄入量较少.type">
- <el-radio value="否">A:否</el-radio>
- <el-radio value="是">B:是</el-radio>
-
- </el-radio-group>
- </el-form-item>
- </td>
- <td colspan="4" >
- <el-form-item >
- <el-input v-model="state.tableData.生活饮食习惯.存在蔬菜摄入量较少.备注" type="textarea"
- :autosize="{ minRows: 1, maxRows: 6 }" placeholder="备注" />
- </el-form-item>
- </td>
- </tr>
- <tr>
- <td rowspan="5">
- 胃肠症状体现
- </td>
- <td colspan="4" >
- <el-form-item label="存在腹痛">
-
- <el-radio-group class="elradiozdi" v-model="state.tableData.胃肠症状体现.存在腹痛.type">
- <el-radio value="否">A:否</el-radio>
- <el-radio value="是">B:是</el-radio>
-
- </el-radio-group>
- </el-form-item>
- </td>
- <td colspan="4" >
- <el-form-item >
- <el-input v-model="state.tableData.胃肠症状体现.存在腹痛.备注" type="textarea"
- :autosize="{ minRows: 1, maxRows: 6 }" placeholder="备注" />
- </el-form-item>
- </td>
- </tr>
- <tr>
- <td colspan="4" >
- <el-form-item label="存在腹胀">
- <el-radio-group class="elradiozdi" v-model="state.tableData.胃肠症状体现.存在腹胀.type">
- <el-radio value="否">A:否</el-radio>
- <el-radio value="是">B:是</el-radio>
- </el-radio-group>
- </el-form-item>
- </td>
- <td colspan="4" >
- <el-form-item >
- <el-input v-model="state.tableData.胃肠症状体现.存在腹痛.备注" type="textarea"
- :autosize="{ minRows: 1, maxRows: 6 }" placeholder="备注" />
- </el-form-item>
- </td>
- </tr>
- <tr>
- <td colspan="4" >
- <el-form-item label="存在恶心呕吐">
- <el-radio-group class="elradiozdi" v-model="state.tableData.胃肠症状体现.存在恶心呕吐.type">
- <el-radio value="否">A:否</el-radio>
- <el-radio value="是">B:是</el-radio>
- </el-radio-group>
- </el-form-item>
- </td>
- <td >
- <el-form-item >
- <el-input v-model="state.tableData.胃肠症状体现.存在恶心呕吐.备注" type="textarea"
- :autosize="{ minRows: 1, maxRows: 6 }" placeholder="备注" />
- </el-form-item>
- </td>
- </tr>
- <tr>
- <td colspan="4" >
- <el-form-item label="腹泻">
- <el-radio-group class="elradiozdi" v-model="state.tableData.胃肠症状体现.腹泻.type">
- <el-radio value="否">A:否</el-radio>
- <el-radio value="是">B:是</el-radio>
- </el-radio-group>
- </el-form-item>
- </td>
- <td >
- <el-form-item >
- <el-input v-model="state.tableData.胃肠症状体现.腹泻.备注" type="textarea"
- :autosize="{ minRows: 1, maxRows: 6 }" placeholder="备注" />
- </el-form-item>
- </td>
- </tr>
- <tr>
- <td colspan="4" >
- <el-form-item label="便秘">
- <el-radio-group class="elradiozdi" v-model="state.tableData.胃肠症状体现.便秘.type">
- <el-radio value="否">A:否</el-radio>
- <el-radio value="是">B:是</el-radio>
- </el-radio-group>
- </el-form-item>
- </td>
- <td >
- <el-form-item >
- <el-input v-model="state.tableData.胃肠症状体现.便秘.备注" type="textarea"
- :autosize="{ minRows: 1, maxRows: 6 }" placeholder="备注" />
- </el-form-item>
- </td>
- </tr>
- <tr>
- <td rowspan="4">
- 其他
- </td>
- <td colspan="4" >
- <el-form-item label="反酸烧心感">
- <el-radio-group class="elradiozdi" v-model="state.tableData.其他.反酸烧心感.type">
- <el-radio value="否">A:否</el-radio>
- <el-radio value="是">B:是</el-radio>
-
- </el-radio-group>
- </el-form-item>
- </td>
- <td >
- <el-form-item >
- <el-input v-model="state.tableData.其他.反酸烧心感.备注" type="textarea"
- :autosize="{ minRows: 1, maxRows: 6 }" placeholder="备注" />
- </el-form-item>
- </td>
- </tr>
- <tr>
- <td colspan="4" >
- <el-form-item label="吞咽困难">
- <el-radio-group class="elradiozdi" v-model="state.tableData.其他.吞咽困难.type">
- <el-radio value="否">A:否</el-radio>
- <el-radio value="是">B:是</el-radio>
-
- </el-radio-group>
- </el-form-item>
- </td>
- <td >
- <el-form-item >
- <el-input v-model="state.tableData.其他.吞咽困难.备注" type="textarea"
- :autosize="{ minRows: 1, maxRows: 6 }" placeholder="备注" />
- </el-form-item>
- </td>
- </tr>
-
- <tr>
- <td colspan="4" >
- <el-form-item label="黑便或便血">
- <el-radio-group class="elradiozdi" v-model="state.tableData.其他.黑便或便血.type">
- <el-radio value="否">A:否</el-radio>
- <el-radio value="是">B:是</el-radio>
-
- </el-radio-group>
- </el-form-item>
- </td>
- <td >
- <el-form-item >
- <el-input v-model="state.tableData.其他.黑便或便血.备注" type="textarea"
- :autosize="{ minRows: 1, maxRows: 6 }" placeholder="备注" />
- </el-form-item>
- </td>
- </tr>
- <tr>
- <td colspan="4" >
- <el-form-item label="排气增多或异味">
- <el-radio-group class="elradiozdi" v-model="state.tableData.其他.排气增多或异味.type">
- <el-radio value="否">A:否</el-radio>
- <el-radio value="是">B:是</el-radio>
-
- </el-radio-group>
- </el-form-item>
- </td>
- <td >
- <el-form-item >
- <el-input v-model="state.tableData.其他.排气增多或异味.备注" type="textarea"
- :autosize="{ minRows: 1, maxRows: 6 }" placeholder="备注" />
- </el-form-item>
- </td>
- </tr>
-
-
-
- <tr>
- <td rowspan="3">
- 胃肠病史及家族史
- </td>
- <td colspan="4" >
- <el-form-item label="有过腹部手术史">
- <el-radio-group class="elradiozdi" v-model="state.tableData.胃肠病史及家族史.有过腹部手术史.type">
- <el-radio value="否">A:否</el-radio>
- <el-radio value="是">B:是</el-radio>
-
- </el-radio-group>
- </el-form-item>
- </td>
- <td colspan="4" >
- <el-form-item >
- <el-input v-model="state.tableData.胃肠病史及家族史.有过腹部手术史.备注" type="textarea"
- :autosize="{ minRows: 1, maxRows: 6 }" placeholder="备注" />
- </el-form-item>
- </td>
- </tr>
- <tr>
- <td colspan="4" >
- <el-form-item label="曾患过胃炎、胃溃疡、十二指肠溃疡、肠炎如溃疡性结肠炎、克罗恩病等、胃胃肠息肉胃肠肿瘤等疾病">
- <el-radio-group class="elradiozdi" v-model="state.tableData.胃肠病史及家族史.病史1.type">
- <el-radio value="否">A:否</el-radio>
- <el-radio value="是">B:是</el-radio>
-
- </el-radio-group>
- </el-form-item>
- </td>
- <td colspan="4" >
- <el-form-item >
- <el-input v-model="state.tableData.胃肠病史及家族史.病史1.备注" type="textarea"
- :autosize="{ minRows: 1, maxRows: 6 }" placeholder="备注" />
- </el-form-item>
- </td>
- </tr>
- <tr>
- <td colspan="4" >
- <el-form-item label="家族中是否有胃肠疾病患者(如父母、兄弟姐妹等,*如有请注明疾病名称)">
- <el-radio-group class="elradiozdi" v-model="state.tableData.胃肠病史及家族史.病史2.type">
- <el-radio value="否">A:否</el-radio>
- <el-radio value="是">B:是</el-radio>
-
- </el-radio-group>
- </el-form-item>
- </td>
- <td colspan="4" >
- <el-form-item >
- <el-input v-model="state.tableData.胃肠病史及家族史.病史2.备注" type="textarea"
- :autosize="{ minRows: 1, maxRows: 6 }" placeholder="备注" />
- </el-form-item>
- </td>
- </tr>
</table>
</div>
</el-form>
@@ -1387,14 +906,14 @@
<el-button type="primary" @click="onSubmit">
保存
</el-button>
- <el-button v-if="state.viewInfo.id" type="primary" v-print="'#printFrom1'">
+ <el-button v-if="state.viewInfo.id" type="primary" @click="onPrint">
<el-icon><Printer /></el-icon>
打印
</el-button>
- <el-button type="primary" v-if="state.viewInfo.id" @click="generatePDF">
+ <!-- <el-button type="primary" v-if="state.viewInfo.id" @click="generatePDF">
<el-icon><Position /></el-icon>
导出
- </el-button>
+ </el-button> -->
</div>
</template>
@@ -1405,27 +924,30 @@
</template>
-<script setup lang="ts" name="visualizingLinkDemo2">
+<script setup lang="ts" >
import html2pdf from 'html2pdf.js';
+import printJs from 'print-js';
import { reactive, onMounted, onUnmounted, ref } from 'vue';
import { formatDate } from '/@/utils/formatTime';
import { NextLoading } from '/@/utils/loading';
import { useUserInfo } from '/@/stores/userInfo';
import { usePatientsInfo } from '/@/stores/patientsInfo';
const storesPat = usePatientsInfo();
-import {Add,update,deleteId,tiaochabiaoInfo} from '/@/api/tiaochabiao/index'
+import {Add,update,list,tiaochabiaoInfo} from '/@/api/tiaochabiao/index'
import { storeToRefs } from 'pinia';
import { useRoute,useRouter } from 'vue-router';
-import { ElMessage } from 'element-plus';
+import { ElLoading, ElMessage } from 'element-plus';
const stores = useUserInfo();
const { patientsInfo } = storeToRefs(storesPat);
const { userInfos } = storeToRefs(stores);
const router = useRouter()
const emit = defineEmits([ "shuaxin" ]);
+// 定义变量内容
+const printRef = ref();
const state = reactive({
dialogTableVisible:false,
tableData: {
- 表名: '膳食调查表',
+ 表名: '膳食生活调查表',
初次调查日期:"",
填表日期: '',
更新日期: '',
@@ -1449,24 +971,24 @@
备注: '',
},
常吃的主食: {
- type: '', //只能选择独居或者家庭
+ type: [], //只能选择独居或者家庭
食用份量: '',
食用频次: '',
},
常吃的蔬菜: {
- type: '',
+ type: [],
食用份量: '',
食用频次: '',
},
常吃的肉类: {
- type: '',
+ type: [],
食用份量: '',
食用频次: ''
},
常吃的水果: {
食用份量: '',
食用频次: '',
- input3: ''
+ input: ''
},
常吃的大豆及其制品是: {
@@ -1555,10 +1077,8 @@
type: '',
备注:'',
},
- 三天饮食记录表:{
- 透析日1:{日期:'',早餐:'',加餐1:'',午餐:"",加餐2:'',晚餐:''},
- 非透析日:{日期:'',早餐:'',加餐1:'',午餐:"",加餐2:'',晚餐:''},
- 透析日2:{日期:'',早餐:'',加餐1:'',午餐:"",加餐2:'',晚餐:''}
+ 二十四小时饮食回顾记录:{
+ 早餐:'',早加餐:'',午餐:"",午加餐:'',晚餐:'',晚加餐:''
},
饮食问题:'',
饮食指导建议:'',
@@ -1601,93 +1121,6 @@
生活习惯问题:'',
生活习惯指导建议:'',
生活习惯执行反馈:'',
- 食物过敏源调查:{
- 易过敏体质: {type: '', 备注: ''},
- 过敏食物:{type: [], 备注: ''},
- 过敏症状:{type: [], 备注: ''},
- 宗教信仰:{type: '', 备注: ''},
- 诊断过敏形式:{type: '', 备注: ''},
- 过敏症状表现为以下哪些:{type: '', 备注: ''},
- 注意事项:{type: '', 备注: ''}
- },
- 生活饮食习惯:{
- 喝咖啡茶或碳酸饮料的习惯:{
- type: '',
- 备注: '',
- },
- 饮酒习惯:{
- type: '',
- 备注: '',
- },
- 经常食用生冷食物:{
- type: '',
- 备注: '',
- },
- 存在蔬菜摄入量较少:{
- type: '',
- 备注: '',
- },
- },
- 胃肠症状体现:{
- 存在腹痛:{
- type: '',
- 备注: '',
- },
- 存在腹胀:{
- type: '',
- 备注: '',
- },
- 存在恶心呕吐:{
- type: '',
- 备注: '',
- },
- 腹泻:{
- type: '',
- 备注: '',
- },
- 便秘:{
- type: '',
- 备注: '',
- },
- },
- 其他:{
- 反酸烧心感:{
- type: '',
- 备注: '',
- },
- 吞咽困难:{
- type: '',
- 备注: '',
- },
- 黑便或便血:{
- type: '',
- 备注: '',
- },
- 排气增多或异味:{
- type: '',
- 备注: '',
- }
- },
- 胃肠病史及家族史:{
- 有过腹部手术史:{
- type: '',
- 备注: '',
- },
- 病史1:{
- name:'',
- type: '',
- 备注: '',
- },
- 病史2:{
- name:'',
- type: '',
- 备注: '',
- },
- },
-
-
-
-
},
loading: false,
viewInfo:{
@@ -1698,7 +1131,7 @@
surveryTime: formatDate(new Date(), 'YYYY-mm-dd HH:MM:SS'),
surveryPerson: userInfos.value.code,
surveryJsonBody: '',
- suveryFormName:'膳食调查表',
+ suveryFormName:'膳食生活调查表',
surveryFormType:0,
updateTime: ''
}
@@ -1710,10 +1143,16 @@
}
// 打印
const onPrint=()=>{
-
+ printJs({
+ printable: printRef.value,
+ type: 'html',
+ css: ['@/assets/css/printcss.css','//at.alicdn.com/t/c/font_2298093_rnp72ifj3ba.css', '//unpkg.com/element-plus/dist/index.css'],
+ scanStyles: false,
+ style: `@media print{}}`,
+ });
}
const generatePDF=()=> {
- const element = document.getElementById('printFrom1');
+ const element = document.getElementById('printMe');
const opt = {
margin: 10,
filename: `${state.tableData.表名}.pdf`,
@@ -1736,7 +1175,7 @@
surveryTime: formatDate(new Date(), 'YYYY-mm-dd HH:MM:SS'),
surveryPerson: userInfos.value.code,
surveryJsonBody: JSON.stringify(state.tableData),
- suveryFormName:'膳食调查表',
+ suveryFormName:'膳食生活调查表',
updateTime: formatDate(new Date(), 'YYYY-mm-dd HH:MM:SS')
}
console.log(info)
@@ -1748,6 +1187,7 @@
})
}else if(info.id>0){
info.surveryTime=state.viewInfo.surveryTime
+ console.log()
update(info).then(re=>{
console.log(re.data)
state.dialogTableVisible=false
@@ -1758,7 +1198,7 @@
}
const getPageInfo=()=>{
state.tableData={
- 表名: '膳食调查表',
+ 表名: '膳食生活调查表',
初次调查日期: formatDate(new Date(),'YYYY-mm-dd'),
填表日期: '',
更新日期: formatDate(new Date(),'YYYY-mm-dd'),
@@ -1782,24 +1222,24 @@
备注: '',
},
常吃的主食: {
- type: '', //只能选择独居或者家庭
+ type: [], //只能选择独居或者家庭
食用份量: '',
食用频次: '',
},
常吃的蔬菜: {
- type: '',
+ type: [],
食用份量: '',
食用频次: '',
},
常吃的肉类: {
- type: '',
+ type: [],
食用份量: '',
食用频次: ''
},
常吃的水果: {
食用份量: '',
食用频次: '',
- input3: ''
+ input: ''
},
常吃的大豆及其制品是: {
type: '',
@@ -1887,10 +1327,8 @@
type: '',
备注:'',
},
- 三天饮食记录表:{
- 透析日1:{日期:'',早餐:'',加餐1:'',午餐:"",加餐2:'',晚餐:''},
- 非透析日:{日期:'',早餐:'',加餐1:'',午餐:"",加餐2:'',晚餐:''},
- 透析日2:{日期:'',早餐:'',加餐1:'',午餐:"",加餐2:'',晚餐:''}
+ 二十四小时饮食回顾记录:{
+ 早餐:'',早加餐:'',午餐:"",午加餐:'',晚餐:'',晚加餐:''
},
饮食问题:'',
饮食指导建议:'',
@@ -1932,90 +1370,7 @@
},
生活习惯问题:'',
生活习惯指导建议:'',
- 生活习惯执行反馈:'',
- 食物过敏源调查:{
- 易过敏体质: {type: '', 备注: ''},
- 过敏食物:{type: [], 备注: ''},
- 过敏症状:{type: [], 备注: ''},
- 宗教信仰:{type: '', 备注: ''},
- 诊断过敏形式:{type: '', 备注: ''},
- 过敏症状表现为以下哪些:{type: '', 备注: ''},
- 注意事项:{type: '', 备注: ''},
- },
- 生活饮食习惯:{
- 喝咖啡茶或碳酸饮料的习惯:{
- type: '',
- 备注: '',
- },
- 饮酒习惯:{
- type: '',
- 备注: '',
- },
- 经常食用生冷食物:{
- type: '',
- 备注: '',
- },
- 存在蔬菜摄入量较少:{
- type: '',
- 备注: '',
- },
- },
- 胃肠症状体现:{
- 存在腹痛:{
- type: '',
- 备注: '',
- },
- 存在腹胀:{
- type: '',
- 备注: '',
- },
- 存在恶心呕吐:{
- type: '',
- 备注: '',
- },
- 腹泻:{
- type: '',
- 备注: '',
- },
- 便秘:{
- type: '',
- 备注: '',
- },
- },
- 其他:{
- 反酸烧心感:{
- type: '',
- 备注: '',
- },
- 吞咽困难:{
- type: '',
- 备注: '',
- },
- 黑便或便血:{
- type: '',
- 备注: '',
- },
- 排气增多或异味:{
- type: '',
- 备注: '',
- }
- },
- 胃肠病史及家族史:{
- 有过腹部手术史:{
- type: '',
- 备注: '',
- },
- 病史1:{
- name:'',
- type: '',
- 备注: '',
- },
- 病史2:{
- name:'',
- type: '',
- 备注: '',
- },
- },
+ 生活习惯执行反馈:''
}
state.viewInfo={
id: 0,
@@ -2025,7 +1380,7 @@
surveryTime: formatDate(new Date(), 'YYYY-mm-dd HH:MM:SS'),
surveryPerson: userInfos.value.code,
surveryJsonBody: '',
- suveryFormName:'膳食调查表',
+ suveryFormName:'膳食生活调查表',
surveryFormType:0,
updateTime: ''
}
@@ -2038,14 +1393,44 @@
}
// 打开查看或者编辑明细
-const openShow = (type: string,mode:tiaochabiaoInfo) => {
+const openShow = async (type: string,mode:tiaochabiaoInfo) => {
console.log(type)
if(type==='add'){
- getPageInfo()
- state.dialogTableVisible = true
+ const pasm={
+ page: 0,
+ size: 1,
+ wherecondition:`survery_form_type=0 and patient_code='${patientsInfo.value.code}' and suvery_form_name='膳食生活调查表'`,
+ ordercondition: 'survery_time desc'
+ }
+ const re= await list(pasm);
+ console.log('店家--------',re.data)
+ if(re.data.list.length){
+ const model=re.data.list[0]
+ state.tableData=JSON.parse(model.surveryJsonBody)
+
+ state.dialogTableVisible = true
+ state.viewInfo={
+ id: 0,
+ code: '',
+ clientCode: userInfos.value.clientCode,
+ patientCode: patientsInfo.value.code,
+ surveryTime: formatDate(new Date(), 'YYYY-mm-dd HH:MM:SS'),
+ surveryPerson: userInfos.value.code,
+ surveryJsonBody: '',
+ suveryFormName:'膳食生活调查表',
+ surveryFormType:0,
+ updateTime: ''
+ }
+
+ }else{
+ getPageInfo()
+ state.dialogTableVisible = true
+ }
+
}
else if(type==='update'){
console.log(mode)
+ console.log(JSON.parse(mode.surveryJsonBody))
state.viewInfo=mode
state.tableData=JSON.parse(mode.surveryJsonBody)
state.tableData.初次调查日期=mode.surveryTime
@@ -2063,7 +1448,6 @@
<style scoped lang="scss">
-
.gridtable {
font-family: verdana, arial, sans-serif;
font-size: 11px;
--
Gitblit v1.8.0