<template>
  <zj-page-layout
    :isScroll="true"
    :refresherTriggered="refresherTriggered"
    @refresherrefresh="refresherrefresh"
    :hasFooter="true"
  >
    <view class="myInsurance">
      <view class="myInsuranceCart" v-for="(item, index) in list" :key="index" @click="gopage(item)">
        <view class="myInsuranceCartbuju xiangxia">
          <view class="">
            {{ item.policyName }}
          </view>
          <view class="" style="color: red">
            {{ { BZZ: '保障中', YSX: '失效', DSX: '待生效' }[item.policyOrderStatus] }}
          </view>
        </view>
        <view class="">
          <view class="xiangxia"> 所属网点：{{ item.websitName }} </view>
          <view class="xiangxia"> 保单类型：{{ { AC: '意外险', EM: '雇主险', IN: '工伤险' }[item.type] }} </view>
          <view class="xiangxia"> 保单编号：{{ item.policyNumber }} </view>
          <view class="xiangxia"> 保单金额：{{ item.payAmount }} </view>
          <view class="xiangxia" v-if="item.startTime && item.endTime">
            有效时间：{{ item.startTime ? item.startTime.split(' ')[0] : '' }}~{{
              item.endTime ? item.endTime.split(' ')[0] : ''
            }}
          </view>
          <view class="xiangxia" v-else> 有效时间： </view>
        </view>
      </view>
    </view>
    <Loading :loadStatus="loadStatus" :dataList="list" />
    <zjDialogPicker
      ref="websitDialog"
      :isShow="isShowWebsitDialog"
      :multiple="false"
      :styleType="2"
      :title="'选择对应网点购买保险'"
      :list="baoxiandangqianxianxitishi"
      :keyName="'name'"
      @cancel="isShowWebsitDialog = false"
      @confirm="confirmWebsitDialog"
    >
    </zjDialogPicker>
    <template slot="footer" v-if="!!baoxiandangqianxianxitishi.length">
      <view class="bottom-container" style="box-sizing: border-box; padding: 20rpx">
        <u-button text="去购买" shape="circle" type="primary" @click="isShowWebsitDialog = true"> </u-button>
      </view>
    </template>
  </zj-page-layout>
</template>
<script>
import zjDialogPicker from '@/components/zj-dialog/zj-dialog-picker.vue'
export default {
  components: {
    zjDialogPicker
  },
  data() {
    return {
      loadStatus: 0,
      list: [],
      websitId: '',
      baoxiandangqianxianxitishi: [],
      isShowWebsitDialog: false,
      refresherTriggered: false
    }
  },
  onShow() {
    uni.showLoading({
      title: '加载中'
    })
    this.loadStatus = 1
    this.$api.post('/worker/myPolicy', { pageNum: 1, pageSize: -1 }).then(res => {
      this.$nextTick(() => {
        uni.hideLoading()
      })
      this.loadStatus = 2
      this.list = res?.data?.records || []
    })
    this.$api.post('/worker/myWebsit').then(res => {
      this.baoxiandangqianxianxitishi = res.data
    })
  },
  methods: {
    // 触发下拉刷新
    refresherrefresh(e) {
      this.refresherTriggered = true
      this.loadStatus = 1
      this.$api.post('/worker/myPolicy', { pageNum: 1, pageSize: -1 }).then(res => {
        this.$nextTick(() => {
          this.refresherTriggered = false
        })
        this.loadStatus = 2
        this.list = res?.data?.records || []
      })
    },
    confirmWebsitDialog(e) {
      this.isShowWebsitDialog = false
      this.$navToPage({
        url:
          '/packageEnter/pages/insurance/myInsuranceBuy/index?websitId=' +
          this?.baoxiandangqianxianxitishi?.[e[0]]?.websitId
      })
    },
    gopage(item) {
      this.$navToPage({
        url: `/packageEnter/pages/insurance/policyParticulars/index?id=${item.id}`
      })
    }
  }
}
</script>

<style lang="scss" scoped>
.myInsurance {
  box-sizing: border-box;
  padding: 20rpx;
  padding-top: 40rpx;

  .myInsuranceCart {
    width: 100%;
    height: auto;
    box-sizing: border-box;
    padding: 20rpx;
    margin-bottom: 20rpx;
    box-shadow: 2.8px 2.8px 2.2px rgba(0, 0, 0, 0.02), 6.7px 6.7px 5.3px rgba(0, 0, 0, 0.028),
      12.5px 12.5px 10px rgba(0, 0, 0, 0.035), 22.3px 22.3px 17.9px rgba(0, 0, 0, 0.042),
      41.8px 41.8px 33.4px rgba(0, 0, 0, 0.05), 100px 100px 80px rgba(0, 0, 0, 0.07);
    border-radius: 10rpx;

    .myInsuranceCartbuju {
      display: flex;
      justify-content: space-between;
    }

    .xiangxia {
      margin-bottom: 10rpx;
    }
  }
}
</style>
