From 8d1d92a4baad8df0814a712224112f4b8eefc9d6 Mon Sep 17 00:00:00 2001
From: wupengfei <834520024@qq.com>
Date: 星期三, 12 十一月 2025 13:32:39 +0800
Subject: [PATCH] feat: 1.3.0.2
---
src/views/EmploymentManage/CheckManage.vue | 136 +++++++++++++++++++++++++++------------------
1 files changed, 82 insertions(+), 54 deletions(-)
diff --git a/src/views/EmploymentManage/CheckManage.vue b/src/views/EmploymentManage/CheckManage.vue
index 5342c37..7810aad 100644
--- a/src/views/EmploymentManage/CheckManage.vue
+++ b/src/views/EmploymentManage/CheckManage.vue
@@ -5,11 +5,8 @@
<template #query>
<QueryFilterItem tip-content="楠屾敹鐘舵��">
<FieldRadio
- v-model="extraParamState.flexEnterpriseSettingStatus"
- :value-enum="[
- { label: '宸插畨鎺�', value: 1 },
- { label: '寰呭畨鎺�', value: 0 },
- ]"
+ v-model="extraParamState.checkReceiveStatus"
+ :value-enum="EnumTaskCheckReceiveStatusText"
buttonStyle
showAllBtn
@change="getList()"
@@ -17,7 +14,7 @@
</QueryFilterItem>
<QueryFilterItem>
<FieldDatePicker
- v-model="extraParamState.flexEnterpriseSettingStatus"
+ v-model="extraParamState.checkReceiveTime"
type="daterange"
range-separator="~"
start-placeholder="璧峰鏃ユ湡"
@@ -39,14 +36,9 @@
</QueryFilterItem>
</template>
</ProTableQueryFilterBar>
- <ProTableV2
- v-bind="proTableProps"
- :columns="CheckManageColumns"
- :operationBtns="operationBtns"
- >
+ <ProTableV2 v-bind="proTableProps" :columns="column" :operationBtns="operationBtns">
</ProTableV2>
</AppContainer>
- <CheckManageDialog v-bind="dialogProps" @check="handleCheck" />
</LoadingLayout>
</template>
@@ -61,38 +53,36 @@
useTable,
FieldDatePicker,
FieldRadio,
- defineOperationBtns,
- useFormDialog,
} from '@bole-core/components';
-import { CheckManageColumns } from './constants';
-import { FlexEnterpriseSettingStatus, Gender } from '@/constants';
-import { OrderInputType } from '@bole-core/core';
-import CheckManageDialog from './components/CheckManageDialog.vue';
+import * as taskCheckReceiveServices from '@/services/api/taskCheckReceive';
+import { ModelValueType } from 'element-plus';
+import { downloadFileByUrl, format, OrderUtils, setOSSLink } from '@/utils';
+import { EnumTaskCheckReceiveStatusText } from '@/constants';
defineOptions({
name: 'CheckManage',
});
-const operationBtns = defineOperationBtns([
- {
- data: {
- enCode: 'checkBtn',
- name: '楠屾敹',
- },
+const operationBtnMap: Record<string, OperationBtnType> = {
+ detailBtn: {
emits: {
- onClick: (role) => openDialog(role, 'check'),
+ onClick: (role) => goCheckReceiveTaskDetail(role),
},
},
- {
- data: {
- enCode: 'detailBtn',
- name: '璇︽儏',
- },
+ exportBtn: {
emits: {
- onClick: (role) => openDialog(role, 'detail'),
+ onClick: (role) => handleExport(role),
+ },
+ extraProps: {
+ hide: (row: API.GetCheckReceiveTasksQueryResultItem) =>
+ row.checkReceiveStatus !== EnumTaskCheckReceiveStatus.Completed,
},
},
-]);
+};
+
+const { column, operationBtns } = useAccess({
+ operationBtnMap,
+});
const router = useRouter();
@@ -101,6 +91,12 @@
};
const state = reactive({ ...BaseState });
+
+const eventContext = useGlobalEventContext();
+
+eventContext.addEvent('checkReceiveTask', () => {
+ getList(paginationState.pageIndex);
+});
onMounted(async () => {
await getList();
@@ -116,17 +112,25 @@
} = useTable(
async ({ pageIndex, pageSize }, extraParamState) => {
try {
- let params: API.GetFlexEnterpriseInput = {
+ let params: API.GetCheckReceiveTasksQuery = {
pageModel: {
rows: pageSize,
page: pageIndex,
orderInput: extraParamState.orderInput,
},
- flexEnterpriseSettingStatus: extraParamState.flexEnterpriseSettingStatus,
- searchWord: extraParamState.searchWord,
+ checkReceiveStatus: extraParamState.checkReceiveStatus,
+ checkReceiveTimeBegin: format(
+ extraParamState.checkReceiveTime?.[0] ?? '',
+ 'YYYY-MM-DD 00:00:00'
+ ),
+ checkReceiveTimeEnd: format(
+ extraParamState.checkReceiveTime?.[1] ?? '',
+ 'YYYY-MM-DD 23:59:59'
+ ),
+ keywords: extraParamState.searchWord,
};
- let res = await flexEnterpriseServices.getFlexEnterpriseList(params, {
+ let res = await taskCheckReceiveServices.getCheckReceiveTasks(params, {
showLoading: !state.loading,
});
return res;
@@ -137,30 +141,54 @@
{
defaultExtraParams: {
searchWord: '',
- orderInput: [{ property: 'id', order: OrderInputType.Desc }],
- flexEnterpriseSettingStatus: '' as any as FlexEnterpriseSettingStatus,
+ orderInput: [{ property: 'id', order: EnumPagedListOrder.Desc }],
+ checkReceiveStatus: '' as any as EnumTaskCheckReceiveStatus,
+ checkReceiveTime: [] as unknown as ModelValueType,
},
- queryKey: ['flexEnterpriseServices/getFlexEnterpriseList'],
- columnsRenderProps: {},
+ queryKey: ['taskCheckReceiveServices/getCheckReceiveTasks'],
+ columnsRenderProps: {
+ checkReceiveStatus: { type: 'enum', valueEnum: EnumTaskCheckReceiveStatusText },
+ billingMethod: { type: 'enum', valueEnum: EnumBillingMethodText },
+ checkReceiveMethods: {
+ formatter: (row: API.GetCheckReceiveTasksQueryResultItem) => {
+ return row.checkReceiveMethods
+ .map((item) => EnumTaskCheckReceiveMethodText[item])
+ .join(',');
+ },
+ },
+ serviceFee: {
+ type: 'money',
+ formatter: (row: API.GetCheckReceiveTasksQueryResultItem) => {
+ return OrderUtils.getServiceFeeText(row.serviceFee, row.billingMethod);
+ },
+ },
+ settlementCycle: { type: 'enum', valueEnum: EnumSettlementCycleText },
+ createdTime: { type: 'date', format: 'YYYY-MM-DD' },
+ beginTime: { type: 'date', format: 'YYYY-MM-DD' },
+ endTime: { type: 'date', format: 'YYYY-MM-DD' },
+ lastCheckReceiveTime: { type: 'date' },
+ },
}
);
-const { dialogProps, dialogState, handleEdit, editForm } = useFormDialog({
- defaultFormParams: {
- id: '',
- type: '',
- },
-});
-
-function openDialog(row, type: string) {
- handleEdit({
- id: row.id,
- type: type,
+function goCheckReceiveTaskDetail(row: API.GetCheckReceiveTasksQueryResultItem) {
+ router.push({
+ name: 'CheckReceiveTaskDetail',
+ params: {
+ id: row.id ?? '',
+ },
});
}
-function handleCheck(val) {
- console.log('val: ', val);
- dialogState.dialogVisible = false;
+async function handleExport(row: API.GetCheckReceiveTasksQueryResultItem) {
+ try {
+ let params: API.ExportTaskCheckReceiveTaskUsersCommand = {
+ id: row.id,
+ };
+ let res = await taskCheckReceiveServices.exportTaskCheckReceiveTaskUsers(params);
+ if (res) {
+ downloadFileByUrl(setOSSLink(res));
+ }
+ } catch (error) {}
}
</script>
--
Gitblit v1.9.1