保存进度!
This commit is contained in:
		@@ -70,6 +70,15 @@ const routes = [
 | 
			
		||||
                },
 | 
			
		||||
                component: ()=> import( "../views/StaffManagement.vue" ),
 | 
			
		||||
            },
 | 
			
		||||
            {
 | 
			
		||||
                path: "/data_management",
 | 
			
		||||
                name: "DataManagement",
 | 
			
		||||
                meta: {
 | 
			
		||||
                    title: "数据管理",
 | 
			
		||||
                    icon: "document",
 | 
			
		||||
                },
 | 
			
		||||
                component: ()=> import( "../views/DataManagement.vue" ), 
 | 
			
		||||
            },
 | 
			
		||||
            {
 | 
			
		||||
                path:"/reward_management",
 | 
			
		||||
                name:"RewardManagement",
 | 
			
		||||
 
 | 
			
		||||
@@ -67,7 +67,7 @@ interface UpdateRewardTelsalerResponse
 | 
			
		||||
 | 
			
		||||
interface DeleteRewardTelsalerRequest
 | 
			
		||||
{
 | 
			
		||||
    recordID: number;
 | 
			
		||||
    recordID: number[];
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
interface DeleteRewardTelsalerResponse
 | 
			
		||||
@@ -255,7 +255,7 @@ function deleteRewardTelsaler( data: DeleteRewardTelsalerRequest, handler: any )
 | 
			
		||||
 | 
			
		||||
    instance.request({
 | 
			
		||||
        method: "post",
 | 
			
		||||
        url: "",
 | 
			
		||||
        url: API_URL.URL_DEL_REWARD_TELSALER,
 | 
			
		||||
        data,
 | 
			
		||||
    })
 | 
			
		||||
        .then(( response: AxiosResponse<any, any> ): void =>
 | 
			
		||||
 
 | 
			
		||||
							
								
								
									
										40
									
								
								code/web/task_schedule/src/views/DataManagement.vue
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										40
									
								
								code/web/task_schedule/src/views/DataManagement.vue
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,40 @@
 | 
			
		||||
<!--
 | 
			
		||||
 * @Author: Kane
 | 
			
		||||
 * @Date: 2023-09-25 09:48:25
 | 
			
		||||
 * @LastEditors: Kane
 | 
			
		||||
 * @FilePath: /task_schedule/src/views/DataManagement.vue
 | 
			
		||||
 * @Description: 数据管理view
 | 
			
		||||
 *
 | 
			
		||||
 * Copyright (c) ${2022} by Kane, All Rights Reserved.
 | 
			
		||||
-->
 | 
			
		||||
<template>
 | 
			
		||||
    <div class="data_management_wrapper">
 | 
			
		||||
        数据管理
 | 
			
		||||
    </div>
 | 
			
		||||
</template>
 | 
			
		||||
<script lang="ts">
 | 
			
		||||
import { ref, reactive } from "vue";
 | 
			
		||||
 | 
			
		||||
export default {
 | 
			
		||||
    name: "DataManagement",
 | 
			
		||||
    setup()
 | 
			
		||||
    {
 | 
			
		||||
        const ui = reactive({
 | 
			
		||||
            showUI: false,
 | 
			
		||||
        });
 | 
			
		||||
 | 
			
		||||
        return { ui, };
 | 
			
		||||
    },
 | 
			
		||||
};
 | 
			
		||||
</script>
 | 
			
		||||
<style lang="scss">
 | 
			
		||||
.data_management_wrapper {
 | 
			
		||||
    margin: 10px;
 | 
			
		||||
 | 
			
		||||
    min-width: 800px;
 | 
			
		||||
 | 
			
		||||
    >*+* {
 | 
			
		||||
        margin-top: 10px;
 | 
			
		||||
    }
 | 
			
		||||
}
 | 
			
		||||
</style>
 | 
			
		||||
@@ -106,10 +106,10 @@
 | 
			
		||||
    </div>
 | 
			
		||||
</template>
 | 
			
		||||
<script lang="ts">
 | 
			
		||||
import { reactive, computed, onBeforeMount } from "vue";
 | 
			
		||||
import { reactive, computed, onBeforeMount, ref } from "vue";
 | 
			
		||||
import { type RewardGainer, type RewardGainerResponse, requestRewardGainers, type DeleteRewardTelsalerResponse, deleteRewardTelsaler, type DeleteRewardTelsalerRequest } from "@/utils/reward.js";
 | 
			
		||||
import eventBus from "@/utils/api/EventBus.js";
 | 
			
		||||
import { ElMessage, ElMessageBox, ElTable } from "element-plus";
 | 
			
		||||
import { ElMessage, ElMessageBox, type ElTable } from "element-plus";
 | 
			
		||||
import RewardGainerDialog from "@/views/reward/RewardTelsaler.vue";
 | 
			
		||||
 | 
			
		||||
interface UI
 | 
			
		||||
@@ -139,9 +139,10 @@ export default {
 | 
			
		||||
            selectedTelsalerName: "",
 | 
			
		||||
            selectedRewardProjectCode: -999,
 | 
			
		||||
        });
 | 
			
		||||
        const rewardTelsalerTable = ref<InstanceType<typeof ElTable>>();
 | 
			
		||||
 | 
			
		||||
        /** 请求数据相关 ***************************/
 | 
			
		||||
        const applyGainerList = ( response: RewardGainerResponse, error: any ): void =>
 | 
			
		||||
        const requestRewardTelsalerListHandler = ( response: RewardGainerResponse, error: any ): void =>
 | 
			
		||||
        {
 | 
			
		||||
            if ( !response.success )
 | 
			
		||||
            {
 | 
			
		||||
@@ -161,6 +162,8 @@ export default {
 | 
			
		||||
            ui.rewardGainerList = response.gainerList;
 | 
			
		||||
 | 
			
		||||
            console.log( "请求获奖人员列表", ui.rewardGainerList );
 | 
			
		||||
 | 
			
		||||
            refreshUI();
 | 
			
		||||
        };
 | 
			
		||||
 | 
			
		||||
        /** 表格相关 ***************************/
 | 
			
		||||
@@ -229,10 +232,19 @@ export default {
 | 
			
		||||
         */
 | 
			
		||||
        const onDeleteRewardGainer = (): void =>
 | 
			
		||||
        {
 | 
			
		||||
            const selectedRecord: RewardGainer[] = rewardTelsalerTable.value?.getSelectionRows();
 | 
			
		||||
            const deleteRequest: DeleteRewardTelsalerRequest = {
 | 
			
		||||
                recordID: 1,
 | 
			
		||||
                recordID: [],
 | 
			
		||||
            };
 | 
			
		||||
 | 
			
		||||
            if ( selectedRecord !== undefined )
 | 
			
		||||
            {
 | 
			
		||||
                selectedRecord.forEach(( item: RewardGainer ): void =>
 | 
			
		||||
                {
 | 
			
		||||
                    deleteRequest.recordID.push( item.recID );
 | 
			
		||||
                });
 | 
			
		||||
            }
 | 
			
		||||
 | 
			
		||||
            deleteRewardTelsaler( deleteRequest, deleteTelsalerRewardHandler );
 | 
			
		||||
        };
 | 
			
		||||
 | 
			
		||||
@@ -253,11 +265,15 @@ export default {
 | 
			
		||||
                    type: "error",
 | 
			
		||||
                });
 | 
			
		||||
            }
 | 
			
		||||
 | 
			
		||||
            refresh();
 | 
			
		||||
        };
 | 
			
		||||
 | 
			
		||||
        /** 事件相关 ***************/
 | 
			
		||||
        /** 订阅新增和保存修改获奖者事件 */
 | 
			
		||||
        eventBus.on( "onSavedRewardTelsaler", (): void =>
 | 
			
		||||
        {
 | 
			
		||||
            // 关闭对话框后,重新请求获奖清单,刷新页面。
 | 
			
		||||
            ui.showEditRewardGainerDialog = false;
 | 
			
		||||
 | 
			
		||||
            refresh();
 | 
			
		||||
@@ -267,7 +283,17 @@ export default {
 | 
			
		||||
         */
 | 
			
		||||
        const refresh = (): void =>
 | 
			
		||||
        {
 | 
			
		||||
            requestRewardGainers( applyGainerList );
 | 
			
		||||
            requestRewardGainers( requestRewardTelsalerListHandler );
 | 
			
		||||
        };
 | 
			
		||||
 | 
			
		||||
        const refreshUI = (): void =>
 | 
			
		||||
        {
 | 
			
		||||
            ui.showUI = false;
 | 
			
		||||
 | 
			
		||||
            setTimeout(() =>
 | 
			
		||||
            {
 | 
			
		||||
                ui.showUI = true;
 | 
			
		||||
            }, 0 );
 | 
			
		||||
        };
 | 
			
		||||
 | 
			
		||||
        onBeforeMount((): void =>
 | 
			
		||||
@@ -279,6 +305,7 @@ export default {
 | 
			
		||||
            ui,
 | 
			
		||||
            tableHeight,
 | 
			
		||||
            rewardGainerData,
 | 
			
		||||
            rewardTelsalerTable,
 | 
			
		||||
            onCurrentPageIndexChange,
 | 
			
		||||
            onTablePageSizeChange,
 | 
			
		||||
            onEditRewardGainer,
 | 
			
		||||
 
 | 
			
		||||
@@ -180,8 +180,6 @@ export default {
 | 
			
		||||
 | 
			
		||||
                updateTelsalerReward( updateRequest, updateTelsalerRewardHandler );
 | 
			
		||||
            }
 | 
			
		||||
 | 
			
		||||
            eventBus.emit( "onSavedRewardTelsaler" );
 | 
			
		||||
        };
 | 
			
		||||
 | 
			
		||||
        const addRewardTelsalerHandler = ( data: AddRewardTelsalerResponse, error: any ): void =>
 | 
			
		||||
@@ -200,6 +198,8 @@ export default {
 | 
			
		||||
                    type: "error",
 | 
			
		||||
                });
 | 
			
		||||
            }
 | 
			
		||||
 | 
			
		||||
            eventBus.emit( "onSavedRewardTelsaler" );
 | 
			
		||||
        };
 | 
			
		||||
 | 
			
		||||
        const updateTelsalerRewardHandler = ( data: UpdateRewardTelsalerResponse, error: any ): void =>
 | 
			
		||||
@@ -218,6 +218,8 @@ export default {
 | 
			
		||||
                    type: "error",
 | 
			
		||||
                });
 | 
			
		||||
            }
 | 
			
		||||
 | 
			
		||||
            eventBus.emit( "onSavedRewardTelsaler" );
 | 
			
		||||
        };
 | 
			
		||||
 | 
			
		||||
        // onBeforeUpdate((): void =>
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user