<template>
  <div class="construct-container">
    <div class="construct-left">
      <div class="tag-image">
        <img src="@/assets/images/建设.png" />
      </div>
      <div class="construct-left-map">
        <Map />
      </div>
    </div>
    <div class="construct-right">
      <div>
        <div class="info-title">项目概况</div>
        <CommonTotal :numberList="projectList" />
      </div>
      <div>
        <div class="info-title">投资完成情况</div>
        <CommonTotal :numberList="investmentList" />
      </div>
      <div>
        <div class="info-title">经营计划完成情况</div>
        <CommonComplete :numberList="completeList" />
      </div>
      <div>
        <div class="info-title">投资回收完成情况</div>
        <CommonTotal :numberList="recycleList" />
      </div>
      <div>
        <div class="info-title">2025年经营计划完成进度</div>
        <CommonPlant :numberList="operationList" />
      </div>
    </div>
  </div>
</template>

<script setup>
import Map from "@/components/CommonMap.vue";
import CommonTotal from "@/components/CommonTotal.vue";
import CommonComplete from "@/components/CommonComplete.vue";
import CommonPlant from "@/components/CommonPlant.vue";
import { shallowReactive, ref, onMounted, onUnmounted, defineOptions } from "vue";

// 定义组件名称，用于keep-alive缓存
defineOptions({
  name: 'Operation'
});
// 使用shallowReactive减少深层响应式开销
const projectList = shallowReactive([
  { title: "总个数（个）", value: "59" },
  { title: "总投资（亿元）", value: "2733.35" },
  { title: "总规模（公里）", value: "5116.72" },
]);
const investmentList = shallowReactive([
  { title: "10月完成投资（亿元）", value: "0" },
  { title: "2025年完成投资（亿元）", value: "19.725" },
  { title: "累计完成投资（亿元）", value: "807.56" },
]);
const recycleList = shallowReactive([
  { title: "10月完成投资（亿元）", value: "0" },
  { title: "2025年完成投资（亿元）", value: "2.98" },
  { title: "完成率", value: "50.2%" },
]);
const operationList = shallowReactive([
  { title: "营业收入完成进度", value: "68.1%" },
  { title: "运营成本完成进度", value: "68.1%" },
  { title: "利润总额完成进度", value: "68.1%" },
]);
const completeList = shallowReactive([
  {
    title: "营业收入",
    protitle: "11月完成",
    proValue: "1.1",
    thirdTtile: "第三季度完成",
    thirdValue: "4.21",
    compareValue: "+1.2%",
  },
  {
    title: "运营成本",
    protitle: "11月完成",
    proValue: "47.98",
    thirdTtile: "第三季度完成",
    thirdValue: "5.75",
    compareValue: "-0.5%",
  },
  {
    title: "利润总额",
    protitle: "11月完成",
    proValue: "9.90",
    thirdTtile: "第三季度完成",
    thirdValue: "23.52",
    compareValue: "+1.2%",
  },
]);
</script>

<style scoped lang="less">
.construct-container {
  display: flex;
  .construct-left {
    width: 100%;
    height: 100%;
    .tag-image {
      img {
        .vw(width, 85);
      }
    }
    .construct-left-map {
      .vh(height, 700);
      .vh(padding-top, 4);
    }
  }
  .construct-right {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    .info-title {
      .vw(width, 180);
      .vh(height, 30);
      .vh(line-height, 30);
      .font(16);
      .vw(padding-left,20);
      .vh(margin-bottom,15);
      .vh(margin-top,15);
      text-align: left;
      color: #fff;
      white-space: nowrap;
      font-family: YouSheBiaoTiYuan;
      background-image: url("@/assets/images/tag.png");
      background-repeat: no-repeat;
      background-size: cover;
      background-position: center;
      background-size: 100% 100%;
    }
  }
}
</style>
