gx
chenyc
2025-07-10 bb6e8dab96d91b59281ea938130accdc32cab918
src/views/home/index.vue
@@ -2,13 +2,13 @@
    <div class="page">
        <div class="box_1">
            <div class="userinfo">
                <div class="name">张三丰</div>
                <div class="userCode">卡号:202324224242 </div>
                <div class="name" v-if="patientInfo.patientInfo.patientName !== undefined">{{patientInfo.patientInfo.patientName}}</div>
                <div class="userCode">卡号:{{patientInfo.patientInfo.patientCardNo}} </div>
                <div class="userQRcode">
                    <img
                        style=" width: 60px;height: 60px;margin-left: 8%; margin-top: 20px;"
                        referrerpolicy="no-referrer"
                        src="@/views/home/assets/img/SketchPng011ef35b32ef075413b756766208370cde43357dffc3333d2acf29b70793c15d.png"
                        :src="patientInfo.patientInfo.patientAvatarIcon"
                    />
                </div>
            </div>
@@ -17,12 +17,12 @@
                    round
                    width="78px"
                    height="78px"
                    src="https://fastly.jsdelivr.net/npm/@vant/assets/cat.jpeg"
                    :src="Info.headimgurl"
                />
            </div>
            <div class="meuns">
                <van-row class="meunsitems">
                    <van-col span="6" class="item">
                    <van-col span="6" @click="topath('/report')" class="item">
                        <van-image
                            round
                            width="42px"
@@ -31,7 +31,7 @@
                        />
                        <div>检验报告</div>
                    </van-col>
                    <van-col span="6" class="item">
                    <van-col span="6" @click="topath('/paiban')" class="item">
                        <van-image
                            round
                            width="42px"
@@ -40,7 +40,7 @@
                        />
                        <div>透析排班</div>
                    </van-col>
                    <van-col span="6" class="item">
                    <van-col span="6" @click="topath('/prescriptionDrug')" class="item">
                        <van-image
                            round
                            width="42px"
@@ -49,7 +49,7 @@
                        />
                        <div>透析医嘱</div>
                    </van-col>
                    <van-col span="6" class="item">
                    <van-col span="6" @click="topath('/record')" class="item">
                        <van-image
                            round
                            width="42px"
@@ -64,14 +64,18 @@
        <div class="viewInfo">
            <div class="box">
                <div class="crainfo">
                    <div class="tizhong">86</div>
                    <div class="tizhong">{{最近体重血压.体重}}</div>
                </div>
                <div class="hanzhi">体重(kg)</div>
                <div class="yinyu">Patient weight data</div>
            </div>
            <div class="box">
                <div class="crainfo">
                    <div class="xueya">138/88</div>
                    <div class="xueya">
                        <div v-if="最近体重血压.血压">{{最近体重血压.血压.split('/')[0]}}</div>
                        <div style="height: 1px;background-color: #909399;"></div>
                        <div v-if="最近体重血压.血压">{{最近体重血压.血压.split('/')[1]}}</div>
                    </div>
                </div>
                <div class="hanzhi">血压(mmHg)</div>
                <div class="yinyu">Patient blood pressure data</div>
@@ -79,118 +83,101 @@
        </div>
        <div class="listInfos">
            <div class="listrow">
                <div class="rowioc" contenteditable>
                <div class="rowioc">
                    <van-image
                        width="24px"
                        height="24px"
                        :src="List1"
                    />
                </div>
                <div class="rowtext" contenteditable>
                <div class="rowtext">
                    <div class="rowb">健康趋势</div>
                    <div class="rowc">Health trends</div>
                </div>
                <div class="rowiocback" contenteditable>
                <div class="rowiocback">
                    <van-image
                        :src="Black"
                    />
                </div>
            </div>
            <div class="listrow">
                <div class="rowioc" contenteditable>
                <div class="rowioc">
                    <van-image
                        width="24px"
                        height="24px"
                        :src="List1"
                    />
                </div>
                <div class="rowtext" contenteditable>
                <div class="rowtext">
                    <div class="rowb">健康趋势</div>
                    <div class="rowc">Health trends</div>
                </div>
                <div class="rowiocback" contenteditable>
                <div class="rowiocback">
                    <van-image
                        :src="Black"
                    />
                </div>
            </div>
        </div>
        <van-tabbar v-model="active" route @change="tabChang">
            <van-tabbar-item name="home" @click="active = 'home'" icon="home-o">首页</van-tabbar-item>
            <van-tabbar-item name="mydo" @click="active = 'mydo'" icon="manager">我的</van-tabbar-item>
        <van-tabbar v-model="active" @change="tabChang">
            <van-tabbar-item name="home" icon="like">首页</van-tabbar-item>
            <van-tabbar-item name="jifen" icon="cart-circle-o">积分商城</van-tabbar-item>
            <van-tabbar-item name="my" icon="manager">我的</van-tabbar-item>
        </van-tabbar>
    </div>
</template>
  <script lang="ts" setup>
    import { onMounted,computed,ref } from 'vue'
    import { ajaxGet } from '@/utils/axios'
    // import { useCounterStore } from '@/stores/counter'
    import { Image as VanImage,Tabbar as VanTabbar , TabbarItem as VanTabbarItem} from 'vant'
    import {useRoute,useRouter} from 'vue-router'
    import { onMounted,ref,computed,watch } from 'vue'
    import { userInfoStore } from '@/stores/userInfo'
    import { Image as VanImage,Tabbar as VanTabbar , TabbarItem as VanTabbarItem, Toast } from 'vant'
    import {useRouter} from 'vue-router'
    import meun1 from './assets/meun1.png'
    import meun2 from './assets/meun2.png'
    import meun3 from './assets/meun3.png'
    import meun4 from './assets/meun4.png'
    import List1 from './assets/row1.png'
    import Black from './assets/Black.png'
    const route = useRoute()
    const router=useRouter()
    // const counter = useCounterStore()
    const  loopData0= [
        {
            lanhuBg2:
                'url(https://lanhu.oss-cn-beijing.aliyuncs.com/SketchPng10c918ad8f5eb3b228828f57732dad7ecd28335754916c4012147796e36591d6) 0px 0px no-repeat',
            lanhutext0: '健康趋势',
            lanhutext1: 'Health&nbsp;trends'
        },
        {
            lanhuBg2:
                'url(https://lanhu.oss-cn-beijing.aliyuncs.com/SketchPng9dd5bfd8bce302227d8c0ccb89144c1b70b47c2b07da1fcbb144c9347d69e72a) 0px 0px no-repeat',
            lanhutext0: '健康宣教',
            lanhutext1: 'Health&nbsp;Education'
        }
    ]
    const loopData1= [
        {
            lanhuBg1:
                'url(https://lanhu.oss-cn-beijing.aliyuncs.com/SketchPng042226982f8d895d90cdcfefb4ea4846696567d8a40a8e0a1dd0073e7f899480) 100% no-repeat',
            lanhutext0: '检验报告'
        },
        {
            lanhuBg1:
                'url(https://lanhu.oss-cn-beijing.aliyuncs.com/SketchPng43a5d2681858b5057217f32705ac557e7fac69348980e05950c034793715775c) 100% no-repeat',
            lanhutext0: '透析排班'
        },
        {
            lanhuBg1:
                'url(https://lanhu.oss-cn-beijing.aliyuncs.com/SketchPng5658c304c4e0841738fddace6a4bbb55d801d98a5e769632b0b71ffe48d56937) 100% no-repeat',
            lanhutext0: '透析医嘱'
        },
        {
            lanhuBg1:
                'url(https://lanhu.oss-cn-beijing.aliyuncs.com/SketchPngd56bf49c9455a5e530aa3cb0e45df98f9ee00edae6eb83220b2a0d76f6e9b487) 100% no-repeat',
            lanhutext0: '透析记录'
        }
    ]
    const userInfo = userInfoStore()
    const active=ref('home')
    const tabChang=(index:any)=>{
        if (index==='home'){
            router.push('/')
        } else {
        } else if (index==='jifen') {
            router.push('jifenShangCheng')
        } else if (index==='my') {
            router.push('my')
        }
    }
    onMounted(() => {
        console.log('初始化',route)
        const queryInfo=route.query
        const {code}=queryInfo
        console.log(code)
        if (code){
            ajaxGet('wechat/code',{code}).then((re:any)=>{
                console.log(re)
            })
    const topath=(url:string)=>{
        console.log('sss')
        if (url==='/report'){
            Toast('此功能暂未开通')
        } else {
            router.push(url)
        }
    }
    const patientInfo=computed(() => {
        return userInfo.patient
    })
    const 最近体重血压=computed(() => {
        return userInfo.最近体重血压
    })
    const Info=computed(() => {
        return userInfo.info
    })
    watch(
        ()=>patientInfo,
        ()=>{
            console.log('患者变化了')
        }
    )
    onMounted(() => {
        // if (userInfo.info.openid===''){
        //     router.push('login')
        // }
        console.log(userInfo.patient,'患者信息')
        console.log(userInfo.info,'微信账号信息')
    })
  </script>
  <style scoped lang="css" src="./assets/index.scss" />