<script lang="ts" setup>
import { onMounted, ref } from "vue";
import {getToolsCount } from '@/api/home/main'

const emit = defineEmits<{
  (e: "reject", params: any);
  (e: "viewrepeat");
}>();

const show = ref(false);
const toolsData = ref({} as any);

async function getData(){
  const res=await getToolsCount();
  toolsData.value=res.data || {};
  if(res.code == 'OK'){
    showModal();
  }
}
onMounted(()=>{
  getData()
})

function showModal() {
  show.value = true;
}

function closeModal() {
  show.value = false;
}

async function reject() {
  emit("reject", { a: "todo" });
  closeModal();
}

async function viewRepeat(e: MouseEvent) {
  emit("viewrepeat");
  e.preventDefault();
  closeModal();
}



defineExpose({
  showModal,
});
</script>

<template>
  <n-modal v-model:show="show" transform-origin="center" class="modal_wrap">
    <div class="wrapper">
      <div class="wrapper-hearder">
        <div class="wrapper-title">欢迎登录智能AI审批工具</div>
        <div class="wrapper-mark">某某有限公司-某某事业部-张小凡</div>
      </div>
      <div class="wrapper-content">
        <div class="flex_box" style="height: 100px">
          <div class="item">
            <SvgIcon name="task_count" width="80" height="96" />
            <div class="num_box">{{ toolsData?.taskTotal || 0 }}</div>
            <div class="title_box">任务总数</div>
          </div>
          <div class="item">
            <SvgIcon name="task_wait" width="80" height="96" />
            <div class="num_box">{{ toolsData?.treat || 0 }}</div>
            <div class="title_box">待审批</div>
          </div>
          <div class="item">
            <SvgIcon name="task_over" width="80" height="96" />
            <div class="num_box">{{ toolsData?.approved || 0 }}</div>
            <div class="title_box">已审批</div>
          </div>
        </div>
        <div class="footer">
          <SvgIcon
            @click="viewRepeat"
            style="cursor: pointer"
            name="login_r"
            width="200"
            height="70"
          />
        </div>
      </div>
    </div>
  </n-modal>
</template>

<style lang="less" scoped>
.modal_wrap {
  background-image: url(../../../../assets/images/approval_modal_bg.png);
  background-repeat: no-repeat;
  background-size: 100%;
  width: 700px;
  height: 500px;
  box-shadow: none !important;
}
.wrapper {
  position: absolute;
  left: calc(50% - 350px);
  .wrapper-hearder {
    margin-top: 110px;
    .wrapper-title {
      text-align: center;
      font-size: 16px;
      font-family: PingFang SC, PingFang SC-Semibold;
      font-weight: Semibold;
      text-align: center;
      color: #333333;
      line-height: 32px;
    }
    .wrapper-mark {
      text-align: center;
      font-size: 13px;
      font-family: HarmonyOS Sans SC, HarmonyOS Sans SC-Regular;
      font-weight: Regular;
      text-align: center;
      color: #666666;
      line-height: 18px;
    }
  }
  .wrapper-content {
    flex: 1;
    border-radius: 8px;
    margin: 100px 60px 35px 120px;
    .flex_box {
      display: flex;
      flex-flow: row nowrap;
      align-items: center;
      justify-content: space-between;
      .item {
        .num_box {
          font-size: 32px;
          font-family: HarmonyOS Sans SC, HarmonyOS Sans SC-Bold;
          font-weight: Bold;
          text-align: left;
          color: #202020;
          text-align: center;
        }
        .title_box {
          opacity: 0.6;
          font-size: 16px;
          font-family: PingFang SC, PingFang SC-Regular;
          font-weight: Regular;
          text-align: center;
          color: #202020;
          text-align: center;
        }
      }
    }

    .imgwrapper {
      width: 200px;
      height: 120px;
      margin-right: 20px;
      border-radius: 8px;
      background-image: url("../../../assets/images/test.png");
      background-repeat: no-repeat;
      background-size: cover;
    }
    .content {
      .task_id {
        font-size: 14px;
        font-family: PingFang SC, PingFang SC-Regular;
        font-weight: Regular;
        text-align: left;
        color: #333333;
        line-height: 20px;
      }
      .tag_box {
        display: flex;
        flex-flow: row nowrap;
        margin: 8px 0;
        .tag_item {
          background: rgba(80, 122, 253, 0.1);
          border-radius: 2px;
          font-size: 12px;
          font-family: PingFang SC, PingFang SC-Regular;
          font-weight: Regular;
          text-align: left;
          color: #507afd;
          line-height: 16px;
          margin-right: 10px;
        }
      }
      .time_box {
        font-size: 14px;
        font-family: PingFang SC, PingFang SC-Regular;
        font-weight: Regular;
        text-align: left;
        color: #333333;
        line-height: 20px;
      }
    }
    .footer {
      display: flex;
      flex-flow: row nowrap;
      align-items: center;
      justify-content: center;
      margin: 20px 30px 0 0;
      position: relative;
      bottom: -80px;
    }
  }
}
</style>
