From 33c45ab67c74c387596a3a2fae26b314bebe1a4f Mon Sep 17 00:00:00 2001
From: zhengyiming <540361168@qq.com>
Date: 星期四, 07 八月 2025 18:05:59 +0800
Subject: [PATCH] Merge branch 'master' of http://120.26.58.240:8888/r/flexJobAdmin

---
 src/views/TaskManage/components/SignDetailView.vue |  100 +++++++++++++++++++++++++++++++++++++++++++++++--
 1 files changed, 95 insertions(+), 5 deletions(-)

diff --git a/src/views/TaskManage/components/SignDetailView.vue b/src/views/TaskManage/components/SignDetailView.vue
index ccbb659..8a59d91 100644
--- a/src/views/TaskManage/components/SignDetailView.vue
+++ b/src/views/TaskManage/components/SignDetailView.vue
@@ -1,13 +1,103 @@
 <template>
-  <div>SignDetailView</div>
+  <LoadingLayout :loading="state.loading">
+    <AppContainer>
+      <ProTableV2 v-bind="proTableProps" :columns="column" :operationBtns="operationBtns">
+      </ProTableV2>
+    </AppContainer>
+  </LoadingLayout>
 </template>
 
 <script setup lang="ts">
+import {
+  OperationBtnType,
+  ProTableV2,
+  LoadingLayout,
+  AppContainer,
+  useTable,
+} from '@bole-core/components';
+import { useAccess } from '@/hooks';
+import { ModelValueType } from 'element-plus';
+import * as enterpriseServices from '@/services/api/enterprise';
+
 defineOptions({
   name: 'SignDetailView',
 });
-</script>
 
-<style lang="scss" scoped>
-@use '@/style/common.scss' as *;
-</style>
+const operationBtnMap: Record<string, OperationBtnType> = {
+  detailBtn: { emits: { onClick: (role) => goDetail(role) } },
+  recommendBtn: {
+    emits: { onClick: (role) => setAdvertiseOnShowStatus(role) },
+    extraProps: {
+      hide: (row) => row.status,
+    },
+  },
+  cancelRecommendBtn: {
+    emits: { onClick: (role) => setAdvertiseOnShowStatus(role) },
+    props: { type: 'danger' },
+    extraProps: {
+      hide: (row) => !row.status,
+    },
+  },
+};
+
+const { checkSubModuleItemShow, column, operationBtns } = useAccess({
+  operationBtnMap,
+});
+
+const router = useRouter();
+const BaseState = {
+  loading: true,
+};
+
+const state = reactive({ ...BaseState });
+
+onMounted(async () => {
+  await getList();
+  state.loading = false;
+});
+
+const {
+  getDataSource: getList,
+  proTableProps,
+  paginationState,
+  extraParamState,
+  reset,
+} = useTable(
+  async ({ pageIndex, pageSize }, extraParamState) => {
+    try {
+      let params: API.GetEnterprisesQuery = {
+        pageModel: {
+          rows: pageSize,
+          page: pageIndex,
+          orderInput: extraParamState.orderInput,
+        },
+        // searchKeys: extraParamState.keyword,
+      };
+      let res = await enterpriseServices.getEnterprises(params, {
+        showLoading: !state.loading,
+      });
+      return res;
+    } catch (error) {}
+  },
+  {
+    defaultExtraParams: {
+      keyword: '',
+      pageType: '' as any as number,
+      status: '' as any as boolean,
+      beginDate: [] as unknown as ModelValueType,
+      endDate: [] as unknown as ModelValueType,
+      orderInput: [{ property: 'id', order: EnumPagedListOrder.Asc }],
+    },
+    columnsRenderProps: {},
+  }
+);
+
+async function setAdvertiseOnShowStatus(row) {
+  try {
+  } catch (error) {}
+}
+
+function goDetail(row) {
+  router.push({ name: 'TaskManageDetail', params: { id: row?.id ?? '' } });
+}
+</script>

--
Gitblit v1.9.1