<template>
  <view v-if="isFirst" class="wrapper">
    <view class="bg" @click="onTap">
      <view class="edit" @click.stop>
        <view class="title">初始体重</view>
        <view class="editem" @click="hideKeyboard">
          <view class="name">日期</view>
          <view class="right">
            <picker mode="date" :value="regTime?regTime:user.firstresulttime" :end="endDate" @change="bindDateChange">
              <view class="text">{{regTime?regTime:user.firstresulttime?user.firstresulttime:"请选择"}}
              </view>
            </picker>
          </view>
        </view>
        <view class="editem">
          <view class="name">体重</view>
          <view class="right">
            <input v-model="weight" type="digit" placeholder="请输入" />kg
          </view>
        </view>
        <view class="btn close" @click="onTap()">取消</view>
        <view class="btn" @click="handleTarget">确定</view>
      </view>
    </view>
  </view>
</template>

<script>
  import {
    mapState
  } from "vuex";
  export default {
    data() {
      return {
        regTime: "",
        weight: "",
      }
    },
    computed: {
      ...mapState(["user", "isFirst"]),
      endDate() {
        return this.$tools.getDate("start")
      }
    },
    methods: {
      // 初始体重
      handleTarget() {
        let that = this
        if (!that.user.firstresulttime) {
          that.$tools.msg("请选择测量日期")
          return
        }
        if (!that.weight) {
          that.$tools.msg("请输入测量体重")
          return
        }
        that.$model.getfirstweight({
          familyid: that.user.familyid,
          time: that.regTime ? that.regTime : that.user.firstresulttime,
          weight: that.weight,
        }).then(res => {
          that.$tools.msg(res.message)
          if (res.code == 0) {
            that.$store.commit("changeFirst", false);
            that.$store.dispatch("getUserInfo", {
              familyid: that.user.familyid,
            })
            that.regTime = ""
            that.weight = ""
          }
        })
      },
      //
      bindDateChange(e) {
        this.regTime = e.target.value
      },
      onTap() {
        this.weight = ""
        this.regTime = ""
        this.$store.commit("changeFirst", false);
      },
      hideKeyboard() {
        uni.hideKeyboard()
      },
    }
  }
</script>

<style scoped>
  .btn {
    width: 40%;
    float: right;
    margin-top: 15px;
  }

  .edit {
    top: 20%
  }

  .close {
    background: #dfdfdf !important;
    float: left;
  }
</style>
