数通智联化工云平台
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 

125 lines
3.2 KiB

<!--
@ 作者: 袁纪菲
@ 时间: 2024-03-03
@ 备注: 奖惩记录
-->
<script lang='ts' setup>
import {jiangchengjilu} from '@/api/hr/people/type'
import { getRewardsAndPunishmentsCont,editRewardsAndPunishmentsContState } from '@/api/hr/people/index'
/**
* 引入页面
*/
import AddRewardsAndPunishments from '@/views/hr/archives/basicinformation/rewardsandpunishmentsadd.vue'
import EditRewardsAndPunishments from '@/views/hr/archives/basicinformation/rewardsandpunishmentsedit.vue'
const props = defineProps({
tabsid:{
type:String,
default:"1"
},
usercont:{
type:Object,
default(){
return {}
}
}
});
const addJcjlBoxPage = ref(false) //新增奖惩记录
const editJcjlBoxPage = ref(false) //编辑奖惩记录
const tableLoading = ref(false)
const jcjlList = ref<jiangchengjilu[]>([])
const jcjlInfo = ref<jiangchengjilu>()
function getjcjlList(){
tableLoading.value = true;
getRewardsAndPunishmentsCont({id:props.usercont.keystr})
.then(( data )=>{
// console.log("改变状态-----222---->",data)
jcjlList.value = data.data
})
.finally(()=>{tableLoading.value = false;})
}
/**
* 监听数据
*/
watch(() => props.tabsid,() => {
if(props.tabsid == "6"){
getjcjlList()
}
})
/**
* 添加数据
*/
function addJcjlBox(key:string){
addJcjlBoxPage.value = true;
}
/**
* 编辑奖惩记录
*/
function editJcjlBox(cont:jiangchengjilu){
jcjlInfo.value = cont
editJcjlBoxPage.value = true;
}
/**
* 删除奖惩记录
*/
function delJcjlBox(cont:jiangchengjilu){
ElMessageBox.confirm("确认删除<"+cont.level+">此数据项?", "警告", {
confirmButtonText: "确定",
cancelButtonText: "取消",
type: "warning",
}).then(() => {
editRewardsAndPunishmentsContState({id:toString(),state:3,isdel:1}).then(() => {
ElMessage.success("删除成功");
getjcjlList()
});
});
}
</script>
<template>
<AddRewardsAndPunishments v-model:addisshow="addJcjlBoxPage" :keyval="props.usercont.keystr" @restdata="getjcjlList" />
<EditRewardsAndPunishments v-model:editisshow="editJcjlBoxPage" :keyval="props.usercont.keystr" :datacont="jcjlInfo" @restdata="getjcjlList" />
<el-table
v-loading="tableLoading"
highlight-current-row
:data="jcjlList"
border
:header-cell-style="{background:'#F5F7FA'}"
>
<el-table-column label="奖惩级别" prop="level" width="100" />
<el-table-column label="奖惩类型" prop="type" width="100" />
<el-table-column label="奖惩内容" prop="content" width="120" />
<el-table-column label="奖惩时间" prop="time" />
<el-table-column label="奖惩单位" prop="company" />
<el-table-column fixed="right" align="right" width="130">
<template #header>
<el-button
type="primary"
link
size="small"
@click.stop="addJcjlBox(props.usercont.keystr)"
>
<i-ep-plus /> 新增
</el-button>
</template>
<template #default="scope">
<el-button
type="primary"
link
size="small"
@click.stop="editJcjlBox(scope.row)"
>
<i-ep-edit />编辑
</el-button>
<el-button
type="primary"
link
size="small"
@click.stop="delJcjlBox(scope.row)"
>
<i-ep-delete />删除
</el-button>
</template>
</el-table-column>
</el-table>
</template>
<style></style>