<template>

  <div class="cash-management">
    <div class="cash-title">
      <div class="text1"> 现金管理
        <span class="text1-update-time">最后更新时间：{{
            workDataUpdateTime && workDataUpdateTime !== '1970-01-01 08:00:00' ? workDataUpdateTime : '该地区暂无数据'
          }}</span>
      </div>
    </div>

    <div class="text2"><span class="text2-income">总营收：{{ cashData.totalIncome }}</span></div>


    <div class="chart-container">
      <!-- 左侧数据列表 -->
      <div class="market-data">
        <div v-for="market in cashData.markets" :key="market.name" class="market-item">
          <span class="market-name">{{ market.name }}:</span>
          <span class="market-value">{{ market.value.toLocaleString() }}新币</span>
        </div>
      </div>

      <!-- 图表区域 -->
      <div ref="chartRef" class="chart"></div>
    </div>

  </div>
</template>

<script setup>
import * as echarts from 'echarts'
import {ref, onMounted} from 'vue'

// 模拟数据
const cashData = ref({
  updateTime: '2025-09-24 12:00:00',
  totalIncome: 1200000,
  markets: [
    {name: '北京', value: 450000},
    {name: '上海', value: 300000},
    {name: '广州', value: 200000},
    {name: '深圳', value: 150000},
    {name: '其他', value: 100000}
  ]
})

const chartRef = ref(null)
let chartInstance = null

const renderChart = () => {
  if (!chartInstance && chartRef.value) {
    chartInstance = echarts.init(chartRef.value)
  }
  const option = {
    tooltip: {trigger: 'item'},
    legend: {
      bottom: 5, // 增加底部距离的
      left: 'center'
    },

    series: [
      {
        label: {show: false},

        type: 'pie',
        radius: ['40%', '70%'],
        data: cashData.value.markets,
        center: ['60%', '45%'] //图表靠右一点
      }
    ]
  }
  chartInstance.setOption(option)
}

onMounted(() => {
  renderChart()
})
</script>

<style scoped>
/* 背景卡片大小 */
.cash-management {
  margin: 10px 5px;
  width: 100%;
  height: 550px;
  flex-shrink: 0;
  border-radius: 8px;
  background: #E7F4FD;
  box-shadow: 0 2px 2px 0 #00000040;
  display: flex;
  flex-direction: column;
  align-items: center;
}

/*
.cash-card {
  width: 100%;
}

.chart {
  width: 100%;
  height: 200px;
} */


.cash-title {
  width: 100%;
  height: 5vh;
  flex-shrink: 0;
  border-radius: 8px;
  background: linear-gradient(90deg, #E4F0FC 0%, #C6ADFF 50%, #E4F0FC 100%);
  box-shadow: 0 2px 2px 0 #00152940;
  display: flex;
  align-items: center;
  justify-content: center;
}

.text1 {
  color: #040a2d;
  font-family: "PingFang SC";
  font-size: 28px;
  font-style: normal;
  font-weight: 900;
  line-height: 31.79px;
}

.text1-update-time {
  width: 100%;
  height: 26px;
  flex-shrink: 0;
  color: #040a2d;
  font-family: "PingFang SC";
  font-size: 20px;
  font-style: normal;
  font-weight: 700;
  line-height: 31.79px;
}

/* 总收入的渐变框 */
.text2 {
  margin: 13px;
  width: 95%;
  height: 48px;
  flex-shrink: 0;
  border-radius: 8px;
  background: linear-gradient(90deg, #E4F0FC 0%, #C1DCF8 50%, #E4F0FC 100%);
  box-shadow: 0 2px 2px 0 #00152940;
  display: flex;
  align-items: center;
  justify-content: center;
}

/* 总收入字体 */
.text2-income {
  width: 215px;
  height: 26px;
  flex-shrink: 0;
  color: #040a2d;
  font-family: "PingFang SC";
  font-size: 20px;
  font-style: normal;
  font-weight: 900;
  line-height: 31.79px;
}

/* 图表容器 */
.chart-container {
  display: flex;
  align-items: center;
  width: 100%;
  height: 100%;
  padding: 10px;
}

/* 左侧数据列表，使用指定的样式 */
.market-data {
  display: flex;
  width: 180px;
  flex-direction: column;
  align-items: flex-start;
  gap: 20px;
  padding: 10px;
  margin-left: 40px;
}

.market-item {
  display: flex;
  justify-content: space-between;
  width: 100%;
  font-family: "PingFang SC";
  font-size: 16px;
  color: #040a2d;
}

.market-name {
  white-space: nowrap;
  font-weight: 700;
}

.market-value {
  font-weight: 500;
}

/* 图表样式 */
.chart {
  flex: 1;
  height: 300px;
  margin-top: 10px;
}
</style>
