zoukankan      html  css  js  c++  java
  • 就餐记录

    <!-- 就餐记录 -->

    <template>
    <view class="content">
    <!-- 导航栏 -->
    <mynavGeneral mCustomTitle="true" :immersionShow="immersionShow">
    <view class="inavTab">
    <view class="iitem" @click="switchTab(0)" :class="{active:tabIndex==0}">
    <text class="ititle">今日</text>
    <view class="iindicator" v-if="tabIndex==0"></view>
    </view>
    <view class="iitem" @click="switchTab(1)" :class="{active:tabIndex==1}">
    <text class="ititle">昨日</text>
    <view class="iindicator" v-if="tabIndex==1"></view>
    </view>
    <view class="iitem" @click="switchTab(2)" :class="{active:tabIndex==2}">
    <text class="ititle">过往</text>
    <view class="iindicator" v-if="tabIndex==2"></view>
    </view>
    </view>
    </mynavGeneral>

    <view :style="{'margin-top':contentMarginTop+'px'}">
    <view class="dateLbl" v-if="tabIndex==2">
    <label class="iconfont iconbutton_icon_more" style="transform: rotateZ(180deg);"></label>
    <text style="color: #81C22D;margin: 0 25px;">{{date_long}}</text>
    <label class="iconfont iconbutton_icon_more"></label>
    </view>
    <view class="dateLbl" v-else style="justify-content: flex-start;">
    <text style="color: #81C22D;margin: 0 10px;">{{date}}</text>
    </view>
    <view class="list">
    <view class="item unsigned" v-for="(item,index) in list" :key="index">
    <text>{{item.meal_type}}</text>
    <text>{{item.time}}</text>
    <text>未打卡</text>
    </view>
    </view>
    </view>
    </view>
    </template>

    <script lang="ts">
    import Vue from 'vue';
    import mynavGeneral from '@/components/mynav-general/mynav-general.vue'
    import { HealthService } from '@/services/HealthService'

    export default Vue.extend({
    components: {
    mynavGeneral
    },
    data() {
    return {
    // 是否展示 导航栏 阴影
    immersionShow: false,
    contentMarginTop: 0,
    tabIndex: 0,
    list: [],
    meal_type:1,
    time:null,
    date:null,
    date_yesterday:null,
    date_long:null // 以往日期
    }
    },
    onLoad() {
    var that: any = getApp();
    this.contentMarginTop = that.globalData.immersionAppBarHeight

    var d = new Date()

    // 今日
    this.date = `${d.getFullYear()}-${d.getMonth()>9?'':'0'}${d.getMonth()+1}-${d.getDate()>9?'':'0'}${d.getDate()}`

    // 昨日
    d.setTime(d.getTime()-24*60*60*1000)
    this.date_yesterday = `${d.getFullYear()}-${d.getMonth()>9?'':'0'}${d.getMonth()+1}-${d.getDate()>9?'':'0'}${d.getDate()}`

    // 以往
    d.setTime(d.getTime()-24*60*60*1000)
    this.date_long = `${d.getFullYear()}-${d.getMonth()>9?'':'0'}${d.getMonth()+1}-${d.getDate()>9?'':'0'}${d.getDate()}`



    this.requestTodayData();
    },
    methods: {


    switchTab(index: any) {
    var that: any = this
    that.tabIndex = index;
    that.list = [];

    that.requestData();
    },
    requestData() {
    var that: any = this
    switch (this.tabIndex) {
    case 0:
    that.requestTodayData();
    break;
    case 1:
    that.requestYesterdayData();
    break;
    case 2:
    that.requestAllData();
    break;
    }
    },
    requestTodayData(){

    var that:any = this

    new HealthService().getRecord(that.date)
    .then((data:any)=>{

    if(data.code==1){
    if(data.data.length){
    data.data.forEach(item => {
              switch(item.meal_type) {
                case 1:
                  item.meal_type = '早餐'
                  break;
                case 2:
                  item.meal_type = '午餐'
                  break;
                default:
                  item.meal_type = '晚餐'
                  break;
              }
            });
    this.list = data.data;
    }

    return;

    }else{
    that.alert("暂无数据");
    }

    })
    .catch((error:any)=>{
    that.alert(error.msg)
    })
    },
    requestYesterdayData(){
    var that:any = this

    new HealthService().getRecord(that.date_yesterday)
    .then((data:any)=>{

    if(data.code==1){
    if(data.data.length){
    data.data.forEach(item => {
              switch(item.meal_type) {
                case 1:
                  item.meal_type = '早餐'
                  break;
                case 2:
                  item.meal_type = '午餐'
                  break;
                default:
                  item.meal_type = '晚餐'
                  break;
              }
            });
    this.list = data.data;
    }

    return;

    }else{
    that.alert("暂无数据");
    }

    })
    .catch((error:any)=>{
    that.alert(error.msg)
    })
    },
    requestAllData(){
    var that:any = this

    new HealthService().getRecord(that.date_long)
    .then((data:any)=>{

    if(data.code==1){
    if(data.data.length){
    data.data.forEach(item => {
              switch(item.meal_type) {
                case 1:
                  item.meal_type = '早餐'
                  break;
                case 2:
                  item.meal_type = '午餐'
                  break;
                default:
                  item.meal_type = '晚餐'
                  break;
              }
            });
    this.list = data.data;
    }

    return;

    }else{
    that.alert("暂无数据");
    }

    // that.alert(data.msg);
    })
    .catch((error:any)=>{
    that.alert(error.msg)
    })
    },


    },
    onPageScroll(e: any) {
    this.immersionShow = e.scrollTop >= 10
    }
    })
    </script>

    <style>
    .contt {}

    /* 自定义标题 */
    .inavTab {
    display: flex;
    justify-content: space-evenly;
    align-items: center;
    height: 100%;
    }

    .inavTab>.iitem {
    height: 100%;
    display: flex;
    align-items: center;
    position: relative;
    }

    .inavTab>.iitem>.ititle {
    font-size: 15px;
    }

    .inavTab>.active .ititle {
    font-size: 18px;
    font-weight: bold;
    }

    .inavTab>.iitem>.iindicator {
    height: 3px;
    15px;
    background-color: #333333;
    border-radius: 1.5px;
    position: absolute;
    bottom: 0px;
    left: 50%;
    margin-left: -7.5px;
    }

    /* */
    .list {}

    .list>.item {
    height: 54px;
    display: flex;
    align-items: center;
    padding: 0 10px;
    font-size: 15px;
    border-bottom: #E6E6E6 0.5px solid;
    }

    .list>.item>text:nth-child(2) {
    flex: 1;
    text-align: center;
    }

    .list>.unsigned>text:nth-child(3) {
    color: #F21616;
    }

    /* */
    .dateLbl {
    display: flex;
    justify-content: center;
    height: 44px;
    align-items: center;
    color: #E6E6E6;
    font-size: 15px;
    }

    .dateLbl>label {
    font-size: 15px;
    }
    </style>

  • 相关阅读:
    C++ 虚函数表解析
    C#编写简单的聊天程序
    c#事件与委托
    c#文本控件实现换行
    docker 详细安装及问题排查
    hadoop命令行
    Spark中的多线程并发处理
    CDH6.1.0离线安装——笔记
    linux 常用命令
    Rsync 恢复 libselinux.SO.1
  • 原文地址:https://www.cnblogs.com/lsongyang/p/13468305.html
Copyright © 2011-2022 走看看