gx
chenyc
2025-02-17 6e015f71927ea207d398735db5a2e6f2d592538f
gx
6个文件已修改
1个文件已添加
580 ■■■■■ 已修改文件
src/api/Patients/index.ts 11 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/i18n/lang/zh-cn.ts 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/layout/navBars/topBar/breadcrumb.vue 3 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/layout/navBars/topBar/user.vue 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/router/route.ts 15 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/home/components/jilubiao/index.vue 337 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/tongji/index.vue 211 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/api/Patients/index.ts
@@ -93,3 +93,14 @@
        data: params,
    });
}
export function nutritionalSummary(params: object) {
    return request({
        url: '/nutrition/food/survey/nutritionalSummary',
        method: 'post',
        headers: {
            'Content-Type': 'application/x-www-form-urlencoded'
            },
        params
    });
}
src/i18n/lang/zh-cn.ts
@@ -71,6 +71,7 @@
        visualizingLinkDemo1: '数据可视化演示1',
        visualizingLinkDemo2: '数据可视化演示2',
        personal: '个人中心',
        tongji:'患者健康服务统计',
        tools: '工具类集合',
        layoutLinkView: '外链',
        layoutIframeViewOne: '内嵌 iframe1',
src/layout/navBars/topBar/breadcrumb.vue
@@ -26,6 +26,8 @@
        <el-avatar shape="square" style="width: 48px; height: 35px;background-color: #ffffff;margin-right: 10px;margin-left: 10px;" fit="contain" :src="logo" />
        <div class="titleHome">营养管理系统</div>
    </div>
</template>
@@ -109,7 +111,6 @@
// 路由更新时
onBeforeRouteUpdate((to) => {
    initRouteSplit(to.path);
    alert(to.path)
});
</script>
src/layout/navBars/topBar/user.vue
@@ -91,7 +91,7 @@
                    <el-dropdown-item command="/home">{{ $t('message.user.dropdown1') }}</el-dropdown-item>
                    <!-- <el-dropdown-item command="wareHouse">{{ $t('message.user.dropdown6') }}</el-dropdown-item> -->
                    <el-dropdown-item command="/personal">{{ $t('message.user.dropdown2') }}</el-dropdown-item>
                    <!-- <el-dropdown-item command="/404">{{ $t('message.user.dropdown3') }}</el-dropdown-item> -->
                    <el-dropdown-item command="/tongji">患者健康服务统计</el-dropdown-item>
                    <!-- <el-dropdown-item command="/401">{{ $t('message.user.dropdown4') }}</el-dropdown-item> -->
                    <el-dropdown-item divided command="logOut">{{ $t('message.user.dropdown5') }}</el-dropdown-item>
                </el-dropdown-menu>
src/router/route.ts
@@ -1120,6 +1120,21 @@
                },
            },
            {
                path: '/tongji',
                name: 'tongji',
                component: () => import('/@/views/tongji/index.vue'),
                meta: {
                    title: 'message.router.tongji',
                    isLink: '',
                    isHide: false,
                    isKeepAlive: true,
                    isAffix: false,
                    isIframe: false,
                    roles: ['admin', 'common'],
                    icon: 'iconfont icon-gerenzhongxin',
                },
            },
            {
                path: '/tools',
                name: 'tools',
                component: () => import('/@/views/tools/index.vue'),
src/views/home/components/jilubiao/index.vue
@@ -392,331 +392,7 @@
                            <!-- </template> -->
                        </template>
                        
                         <!-- 用药管理 -->
                         <tr>
                            <td rowspan="6">用药管理</td>
                            <!-- <td rowspan="2">1</td> -->
                            <td rowspan="2">用药调查</td>
                            <td></td>
                            <td colspan="2"></td>
                            <td></td>
                            <td></td>
                        </tr>
                        <tr>
                            <td></td>
                            <td></td>
                            <td></td>
                            <td></td>
                        </tr>
                        <tr>
                            <!-- <td rowspan="2">2</td> -->
                            <td rowspan="2">用药监督</td>
                            <td></td>
                            <td colspan="2"></td>
                            <td></td>
                            <td></td>
                        </tr>
                        <tr>
                            <td></td>
                            <td></td>
                            <td></td>
                            <td></td>
                        </tr>
                        <tr>
                            <!-- <td rowspan="2">3</td> -->
                            <td rowspan="2">指导建议</td>
                            <td></td>
                            <td colspan="2"></td>
                            <td></td>
                            <td></td>
                        </tr>
                        <tr>
                            <td></td>
                            <td></td>
                            <td></td>
                            <td></td>
                        </tr>
                        <!-- 随访 -->
                        <tr>
                            <td rowspan="2">随访</td>
                            <!-- <td rowspan="2">1</td> -->
                            <td rowspan="2">随访情况</td>
                            <td></td>
                            <td colspan="2"></td>
                            <td></td>
                            <td></td>
                        </tr>
                        <tr>
                            <td></td>
                            <td></td>
                            <td></td>
                            <td></td>
                        </tr>
                        <!-- 营养筛查评估 -->
                        <tr>
                            <td rowspan="4">营养筛查评估</td>
                            <!-- <td rowspan="2">1</td> -->
                            <td rowspan="2">营养筛查结果</td>
                            <td></td>
                            <td colspan="2"></td>
                            <td></td>
                            <td></td>
                        </tr>
                        <tr>
                            <td></td>
                            <td colspan="2"></td>
                            <td></td>
                            <td></td>
                        </tr>
                        <tr>
                            <!-- <td rowspan="2">2</td> -->
                            <td rowspan="2">营养评估结果</td>
                            <td></td>
                            <td colspan="2"></td>
                            <td></td>
                            <td></td>
                        </tr>
                        <tr>
                            <td></td>
                            <td colspan="2"></td>
                            <td></td>
                            <td></td>
                        </tr>
                        <!-- 数据评估 -->
                        <tr>
                            <td rowspan="12">数据评估</td>
                            <!-- <td rowspan="2">1</td> -->
                            <td rowspan="2">干体重</td>
                            <td></td>
                            <td colspan="2"></td>
                            <td></td>
                            <td></td>
                        </tr>
                        <tr>
                            <td></td>
                            <td colspan="2"></td>
                            <td></td>
                            <td></td>
                        </tr>
                        <tr>
                            <!-- <td rowspan="2">2</td> -->
                            <td rowspan="2">BMI </td>
                            <td></td>
                            <td colspan="2"></td>
                            <td></td>
                            <td></td>
                        </tr>
                        <tr>
                            <td></td>
                            <td></td>
                            <td></td>
                            <td></td>
                        </tr>
                        <tr>
                            <!-- <td rowspan="2">3</td> -->
                            <td rowspan="2">生化指标 </td>
                            <td></td>
                            <td colspan="2"></td>
                            <td></td>
                            <td></td>
                        </tr>
                        <tr>
                            <td></td>
                            <td></td>
                            <td></td>
                            <td></td>
                        </tr>
                        <tr>
                            <!-- <td rowspan="2">4</td> -->
                            <td rowspan="2">脱水量 </td>
                            <td></td>
                            <td colspan="2"></td>
                            <td></td>
                            <td></td>
                        </tr>
                        <tr>
                            <td></td>
                            <td colspan="2"></td>
                            <td></td>
                            <td></td>
                        </tr>
                        <tr>
                            <!-- <td rowspan="2">5</td> -->
                            <td rowspan="2">血压 </td>
                            <td></td>
                            <td colspan="2"></td>
                            <td></td>
                            <td></td>
                        </tr>
                        <tr>
                            <td></td>
                            <td colspan="2"></td>
                            <td></td>
                            <td></td>
                        </tr>
                        <tr>
                            <!-- <td rowspan="2">6</td> -->
                            <td rowspan="2">血糖 </td>
                            <td></td>
                            <td colspan="2"></td>
                            <td></td>
                            <td></td>
                        </tr>
                        <tr>
                            <td></td>
                            <td colspan="2"></td>
                            <td></td>
                            <td></td>
                        </tr>
                        <tr>
                            <td rowspan="8">个性化管理</td>
                            <!-- <td rowspan="2">1</td> -->
                            <td rowspan="2">指导目标</td>
                            <td></td>
                            <td colspan="2"></td>
                            <td></td>
                            <td></td>
                        </tr>
                        <tr>
                            <td></td>
                            <td colspan="2"></td>
                            <td></td>
                            <td></td>
                        </tr>
                        <tr>
                            <!-- <td rowspan="2">2</td> -->
                            <td rowspan="2">指导建议</td>
                            <td></td>
                            <td colspan="2"></td>
                            <td></td>
                            <td></td>
                        </tr>
                        <tr>
                            <td></td>
                            <td colspan="2"></td>
                            <td></td>
                            <td></td>
                        </tr>
                        <tr>
                            <!-- <td rowspan="2">3</td> -->
                            <td rowspan="2">指导方案</td>
                            <td></td>
                            <td colspan="2"></td>
                            <td></td>
                            <td></td>
                        </tr>
                        <tr>
                            <td></td>
                            <td></td>
                            <td></td>
                            <td></td>
                        </tr>
                        <tr>
                            <!-- <td rowspan="2">4</td> -->
                            <td rowspan="2">随访情况</td>
                            <td></td>
                            <td colspan="2"></td>
                            <td></td>
                            <td></td>
                        </tr>
                        <tr>
                            <td></td>
                            <td colspan="2"></td>
                            <td></td>
                            <td></td>
                        </tr>
                        <!-- 效果反馈 -->
                        <tr>
                            <td rowspan="4">效果反馈</td>
                            <!-- <td rowspan="2">1</td> -->
                            <td rowspan="2">生化数据改善</td>
                            <td></td>
                            <td colspan="2"></td>
                            <td></td>
                            <td></td>
                        </tr>
                        <tr>
                            <td></td>
                            <td colspan="2"></td>
                            <td></td>
                            <td></td>
                        </tr>
                        <tr>
                            <!-- <td rowspan="2">2</td> -->
                            <td rowspan="2">主观感受改善</td>
                            <td></td>
                            <td colspan="2"></td>
                            <td></td>
                            <td></td>
                        </tr>
                        <tr>
                            <td></td>
                            <td colspan="2"></td>
                            <td></td>
                            <td></td>
                        </tr>
                        <!-- 产品管理 -->
                        <tr>
                            <td rowspan="4">产品管理</td>
                            <!-- <td rowspan="2">1</td> -->
                            <td rowspan="2">好馨意</td>
                            <td></td>
                            <td colspan="2"></td>
                            <td></td>
                            <td></td>
                        </tr>
                        <tr>
                            <td></td>
                            <td colspan="2"></td>
                            <td></td>
                            <td></td>
                        </tr>
                        <tr>
                            <!-- <td rowspan="2">2</td> -->
                            <td rowspan="2">其他品牌</td>
                            <td></td>
                            <td colspan="2"></td>
                            <td></td>
                            <td></td>
                        </tr>
                        <tr>
                            <td></td>
                            <td colspan="2"></td>
                            <td></td>
                            <td></td>
                        </tr>
                        <tr>
                            <td rowspan="4">健康营养宣教</td>
                            <!-- <td rowspan="2">1</td> -->
                            <td rowspan="2">生化指标</td>
                            <td></td>
                            <td colspan="2"></td>
                            <td></td>
                            <td></td>
                        </tr>
                        <tr>
                            <td></td>
                            <td colspan="2"></td>
                            <td></td>
                            <td></td>
                        </tr>
                        <tr>
                            <!-- <td rowspan="2">2</td> -->
                            <td rowspan="2">营养饮食</td>
                            <td></td>
                            <td colspan="2"></td>
                            <td></td>
                            <td></td>
                        </tr>
                        <tr>
                            <td></td>
                            <td colspan="2"></td>
                            <td></td>
                            <td></td>
                        </tr>
                    </table>
                    </el-scrollbar>
                </div>
@@ -799,6 +475,11 @@
    try {
        state.loading = true
        state.from1Datas=[]
        state.from2Datas[0].list=[]
        state.from2Datas[1].list=[]
        state.from2Datas[2].list=[]
        state.from2Datas[3].list=[]
        state.from2Datas[4].list=[]
        const [res1,fromData1,fromData2,fromData3,fromData4] = await Promise.all([
            getPatData(pam),
            getFrom1(),
@@ -815,11 +496,7 @@
           
        }
        if(fromData2.data.list.length>0){
            state.from2Datas[0].list=[]
            state.from2Datas[1].list=[]
            state.from2Datas[2].list=[]
            state.from2Datas[3].list=[]
            state.from2Datas[4].list=[]
            fromData2.data.list.forEach((element:any)=>{
                console.log('0000000000000',element)
                if(element.suveryFormName==='NRS-2002'){
src/views/tongji/index.vue
New file
@@ -0,0 +1,211 @@
<template>
    <div class="personal layout-pd">
        <el-form size="small" :inline="true" :model="state.formInline">
            <el-form-item label="填报日期">
                <el-date-picker
                    v-model="state.formInline.date"
                    type="daterange"
                    unlink-panels
                    range-separator="To"
                    start-placeholder="开始"
                    end-placeholder="结束"
                    :shortcuts="shortcuts"
                    format="YYYY/MM/DD"
                    value-format="YYYY-MM-DD"
                />
            </el-form-item>
            <el-form-item>
                <el-button type="primary" @click="onSubmit">查询</el-button>
            </el-form-item>
        </el-form>
        <div>
            <table id="tabledome" class="gridtable">
                <tr>
                    <th colspan="22">健康管理服务明显表</th>
                </tr>
                <tr>
                    <td colspan="10">服务单位:{{clientName}}</td>
                    <td colspan="22">服务期({{state.formInline.date[0]}}到{{state.formInline.date[2]}})</td>
                </tr>
                <tr>
                    <th rowspan="2">序号</th>
                    <th rowspan="2">姓名</th>
                    <th rowspan="2">干体重</th>
                    <th rowspan="2">最新生化检验数据更新</th>
                    <th colspan="5">营养风险&营养评估</th>
                    <th rowspan="2">膳食调查</th>
                    <th colspan="8">个性化饮食指导</th>
                    <th>团体宣教</th>
                    <th rowspan="2">随访跟进</th>
                    <th rowspan="2">营养咨询回复</th>
                    <th rowspan="2">购买套餐</th>
                </tr>
                <tr>
                    <th>NRS-2002</th>
                    <th>SGA</th>
                    <th>MIS</th>
                    <th>GNRI</th>
                    <th>PEW</th>
                    <!-- <th>膳食调查</th> -->
                    <!-- <th colspan="8">个性化饮食指导</th> -->
                    <th>控磷</th>
                    <th>控钾</th>
                    <th>控水</th>
                    <th>贫血</th>
                    <th>蛋白质</th>
                    <th>便秘</th>
                    <th>腹泻</th>
                    <th>体重管理</th>
                    <th style="color: red;">专题勾选</th>
                </tr>
                <tbody>
                    <tr v-for="(row,index)  in state.tableData" :key="index">
                        <td>{{index+1}}</td>
                        <td>{{row?.patientName}}</td>
                        <td>{{row?.patientDryWeight}}</td>
                        <td>{{row?.checkIsData?'✔':''}}</td>
                        <td>{{row?.surveryTimeMap?.['NRS-2002']?.id?'✔':''}}</td>
                        <td>{{row?.surveryTimeMap?.['SGA']?.id?'✔':''}}</td>
                        <td>{{row?.surveryTimeMap?.['MIS']?.id?'✔':''}}</td>
                        <td>{{row?.surveryTimeMap?.['GNRI']?.id?'✔':''}}</td>
                        <td>{{row?.surveryTimeMap?.['PEW']?.id?'✔':''}}</td>
                        <td>{{row?.surveryTimeMap?.['膳食生活调查表']?.id?'✔':''}}</td>
                        <td>{{row?.surveryTimeMap?.['营养饮食指导方案']?.id?'✔':''}}</td>
                        <td>{{row?.surveryTimeMap?.['营养饮食指导方案']?.id?'✔':''}}</td>
                        <td>{{row?.surveryTimeMap?.['营养饮食指导方案']?.id?'✔':''}}</td>
                        <td>{{row?.surveryTimeMap?.['营养饮食指导方案']?.id?'✔':''}}</td>
                        <td>{{row?.surveryTimeMap?.['营养饮食指导方案']?.id?'✔':''}}</td>
                        <td>{{row?.surveryTimeMap?.['营养饮食指导方案']?.id?'✔':''}}</td>
                        <td>{{row?.surveryTimeMap?.['营养饮食指导方案']?.id?'✔':''}}</td>
                        <td>{{row?.surveryTimeMap?.['营养饮食指导方案']?.id?'✔':''}}</td>
                        <td></td>
                        <td>{{row?.surveryTimeMap?.['随访记录']?.id?'✔':''}}</td>
                        <td></td>
                        <td></td>
                    </tr>
                </tbody>
            </table>
        </div>
    </div>
</template>
<script setup lang="ts" name="personal">
import { reactive, computed, onMounted, ref } from 'vue';
import { formatAxis } from '/@/utils/formatTime';
import { storeToRefs } from 'pinia';
import { useUserInfo } from '/@/stores/userInfo';
import {nutritionalSummary} from '/@/api/Patients'
import {editUserInfo} from '/@/api/login'
import { ElLoading } from 'element-plus';
import {formatDate} from '/@/utils/formatTime'
const stores = useUserInfo();
const { userInfos } = storeToRefs(stores);
const shortcuts = [
  {
    text: '上一周',
    value: () => {
      const end = new Date()
      const start = new Date()
      start.setTime(start.getTime() - 3600 * 1000 * 24 * 7)
      return [start, end]
    },
  },
  {
    text: '上一个月',
    value: () => {
      const end = new Date()
      const start = new Date()
      start.setTime(start.getTime() - 3600 * 1000 * 24 * 30)
      return [start, end]
    },
  },
  {
    text: '前三个月',
    value: () => {
      const end = new Date()
      const start = new Date()
      start.setTime(start.getTime() - 3600 * 1000 * 24 * 90)
      return [start, end]
    },
  },
]
const clientName=computed(()=>{
    return userInfos.value.clientName
})
const tableHe = computed(() => {
    let height = document.documentElement.clientHeight;
    console.log('窗口高度')
    const navDom = document.querySelector('.layout-navbars-breadcrumb-index');
    if (navDom) {
        height -= navDom.scrollHeight;
    }
    return height+'px'
})
// 当前时间提示语
const end = new Date()
const start = new Date()
start.setTime(start.getTime() - 3600 * 1000 * 24 * 90)
const state = reactive({
    tableData: <any>[],
    page:1,
    size:10,
    total:0,
    loading: false,
    formInline:{
        date: [formatDate(start,'YYYY-mm-dd'), formatDate(end,'YYYY-mm-dd')],
    },
    dialogTableVisible:false
})
const onSubmit=()=>{
    const pasm={
        startTime:state.formInline.date[0]+ ' 00:00:00',
        endTime:state.formInline.date[1]+ ' 23:59:59',
        clientCode:userInfos.value.clientCode,
        queryValue:''
    }
    console.log(pasm)
    nutritionalSummary(pasm).then(re=>{
        console.log(re.data)
        state.tableData=re.data
    })
}
onMounted(()=>{
    onSubmit()
})
</script>
<style scoped lang="scss">
.gridtable {
    width: 100%;
    font-family: verdana, arial, sans-serif;
    font-size: 11px;
    color: #333333;
    border-width: 1px;
    border-color: #666666;
    border-collapse: collapse;
}
.gridtable th {
    border-width: 1px;
    padding: 8px;
    border-style: solid;
    border-color: #666666;
    background-color: #a4b0e2;
}
.gridtable td {
    border-width: 1px;
    padding: 8px;
    border-style: solid;
    border-color: #666666;
    background-color: #ffffff;
    text-align: center;
}
</style>