保存进度!
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