From 1ea740c51e84a80e6eb069846ba4a58438f9795c Mon Sep 17 00:00:00 2001
From: wupengfei <834520024@qq.com>
Date: 星期一, 07 四月 2025 17:40:12 +0800
Subject: [PATCH] feat: init

---
 src/views/MaterialReview/MaterialReviewDetail.vue |   88 +++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 87 insertions(+), 1 deletions(-)

diff --git a/src/views/MaterialReview/MaterialReviewDetail.vue b/src/views/MaterialReview/MaterialReviewDetail.vue
index 62c93d0..7eee540 100644
--- a/src/views/MaterialReview/MaterialReviewDetail.vue
+++ b/src/views/MaterialReview/MaterialReviewDetail.vue
@@ -1,13 +1,99 @@
 <template>
-  <div>MaterialReviewDetail</div>
+  <LoadingLayout>
+    <AppContainer>
+      <PageFormLayout>
+        <template #title>
+          <div class="page-form-layout-title">
+            <div>
+              鐢虫姤璇︽儏
+              <span class="page-form-layout-title-item status">
+                {{ `瀹℃牳鐘舵��:${state.detail.categoryName}` }}
+              </span>
+              <span class="page-form-layout-title-item remark">
+                {{ `瀹℃牳鏈�氳繃鍘熷洜:${state.detail.categoryName}` }}
+              </span>
+            </div>
+          </div>
+        </template>
+        <DetailView :form="state.detail">
+          <template #table>
+            <DeclareEnterpriseTableView ref="tableRef"></DeclareEnterpriseTableView>
+          </template>
+        </DetailView>
+        <template #footer>
+          <el-button @click="handleBack">鍏抽棴</el-button>
+        </template>
+      </PageFormLayout>
+    </AppContainer>
+  </LoadingLayout>
 </template>
 
 <script setup lang="ts">
+import { AppContainer, LoadingLayout, UploadUserFile, PageFormLayout } from '@bole-core/components';
+import { DataRangeEnum } from '@/constants';
+import DetailView from '@/components/commonView/DetailView.vue';
+import DeclareEnterpriseTableView from '@/components/commonView/DeclareEnterpriseTableView.vue';
+import { useQuery } from '@tanstack/vue-query';
+import * as informationServices from '@/services/api/Information';
+import { convertApi2FormUrlOnlyOne } from '@/utils';
+import { useRouteView } from '@/hooks';
+
 defineOptions({
   name: 'MaterialReviewDetail',
 });
+
+const route = useRoute();
+const { closeViewPush } = useRouteView();
+const id = route.params?.id as string;
+const state = reactive({
+  detail: {
+    categoryName: '',
+    amount: 0,
+    url: [] as UploadUserFile[],
+  },
+});
+
+const tableRef = ref<InstanceType<typeof DeclareEnterpriseTableView>>();
+
+const { data: detail, isLoading } = useQuery({
+  queryKey: ['informationServices/getInformationShowDetail', id],
+  queryFn: async () => {
+    return await informationServices.getInformationShowDetail(
+      { id: id },
+      {
+        showLoading: false,
+      }
+    );
+  },
+  placeholderData: () => ({} as API.InformationShowDetailDto),
+  onSuccess(data) {
+    state.detail.categoryName = data.categoryName;
+    state.detail.amount = data.attentionCount;
+    state.detail.url = convertApi2FormUrlOnlyOne(data.avatarUrl);
+
+    tableRef.value?.getList();
+  },
+});
+
+function handleBack() {
+  closeViewPush(route, {
+    name: 'MaterialReviewList',
+  });
+}
 </script>
 
 <style lang="scss" scoped>
 @use '@/style/common.scss' as *;
+
+.page-form-layout-title-item {
+  margin-left: 16px;
+  font-size: 16px;
+
+  &.remark {
+    flex: 1;
+    min-width: 0;
+
+    @include utils-ellipsis;
+  }
+}
 </style>

--
Gitblit v1.9.1