中航光电热表web
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.

868 lines
34 KiB

<template>
<basic-container>
<avue-crud :option="option" :table-loading="loading" :data="data" v-model="form" v-model:page="page" ref="crud"
@row-del="rowDel" @search-change="searchChange" @search-reset="searchReset"
@selection-change="selectionChange" @current-change="currentChange" @size-change="sizeChange"
@refresh-change="refreshChange" @on-load="onLoad">
<template #menu-left>
<el-button type="primary" @click="processSubmitData()">审核通过</el-button>
</template>
<template #menu-right>
<el-button type="primary" @click="switchClick(true)" plain>已评审未审核</el-button>
<el-button type="primary" @click="switchClick(false)" plain>未评审</el-button>
</template>
<template #menu="scope">
</template>
</avue-crud>
</basic-container>
</template>
<script>
export default {
components: {
},
data() {
return {
selectionList: [],
option: {
height: 'auto',
calcHeight: 32,
tip: false,
size: 'medium',
simplePage: true,
searchShow: true,
searchMenuSpan: 6,
searchIcon: true,
searchIndex: 3,
tree: false,
border: true,
index: true,
selection: false,
viewBtn: false,
delBtn: false,
addBtn: false,
editBtn: false,
addBtnText: '申请',
editBtnText: '修改',
viewBtnIcon: ' ',
delBtnIcon: ' ',
editBtnIcon: ' ',
viewBtnText: '详情',
labelWidth: 120,
menuWidth: 180,
dialogWidth: 640,
dialogClickModal: false,
searchEnter: true,
excelBtn: false,
filterBtn: true,
searchShowBtn: false,
columnSort: true,
excelBtn: true,
columnSort: true,
showOverflowTooltip: true,
menu: false,
5 months ago
searchLabelPosition: 'left',
searchGutter: 24,
searchSpan: 6,
menuAlign: 'left',
gridBtn: false,
searchMenuPosition: 'right',
addBtnIcon: ' ',
viewBtnIcon: ' ',
delBtnIcon: ' ',
editBtnIcon: ' ',
align: 'center',
column: [
{
label: '镀种小类',
prop: 'plate',
sortable: true,
filter: true,
span: 24,
search: false,
width: 130,
type:'select',
dicData:[
{
label:'镀金'
},
{
label:'镀银'
}
]
},
{
label: '厂家代码',
prop: 'bsOemCustomer.ocCode',
bind: 'bsOemCustomer.ocCode',
search: false,
sortable: true,
filter: true,
span: 24,
width: 120,
},
{
label: '厂家名称',
prop: 'bsOemCustomer.ocName',
bind: 'bsOemCustomer.ocName',
search: false,
sortable: true,
filter: true,
span: 24,
width: 120,
},
{
label: '状态',
prop: 'omStatus',
type: 'select',
search: false,
sortable: true,
span: 24,
dicData: [
{
value: 1,
label: '新建'
},
{
value: 2,
label: '填写中'
},
{
value: 3,
label: '已评审'
},
{
value: 4,
label: '已审核'
}
]
},
{
label: '计划准时完成',
children: [
{
label: '目标值(%)',
prop: 'jhzsTarget',
search: false,
sortable: true,
filter: true,
span: 24,
width: 120,
},
{
label: '实际值(%)',
prop: 'jhzsReality',
search: false,
sortable: true,
filter: true,
span: 24,
width: 120,
cell: true,
rules: [
{ required: true, message: '请输入姓名', trigger: 'blur' }
]
},
{
label: '绩效得分',
prop: 'jhzsNum',
search: false,
sortable: true,
filter: true,
span: 24,
width: 120,
},
]
},
{
label: '重点零件完成率',
children: [
{
label: '目标值(%)',
prop: 'zdljTarget',
search: false,
sortable: true,
filter: true,
span: 24,
width: 120,
},
{
label: '实际值(%)',
prop: 'zdljReality',
search: false,
sortable: true,
filter: true,
span: 24,
width: 120,
cell: true,
rules: [
{ required: true, message: '请输入姓名', trigger: 'blur' }
]
},
{
label: '绩效得分',
prop: 'zdljNum',
search: false,
sortable: true,
filter: true,
span: 24,
width: 120,
},
]
},
{
label: '清欠项',
children: [
{
label: '目标值',
prop: 'qqxTarget',
search: false,
sortable: true,
filter: true,
span: 24,
width: 120,
},
{
label: '实际值',
prop: 'qqxReality',
search: false,
sortable: true,
filter: true,
span: 24,
width: 120,
cell: true,
rules: [
{ required: true, message: '请输入姓名', trigger: 'blur' }
]
},
{
label: '绩效得分',
prop: 'qqxNum',
search: false,
sortable: true,
filter: true,
span: 24,
width: 120,
},
]
},
{
label: '客户投诉(扣分项)',
children: [
{
label: '目标值',
prop: 'produceTsTarget',
search: false,
sortable: true,
filter: true,
span: 24,
width: 120,
},
{
label: '实际值',
prop: 'produceTsReality',
search: false,
sortable: true,
filter: true,
span: 24,
width: 120,
cell: true,
rules: [
{ required: true, message: '请输入姓名', trigger: 'blur' }
]
},
{
label: '绩效得分',
prop: 'produceTsNum',
search: false,
sortable: true,
filter: true,
span: 24,
width: 120,
},
]
},
{
label: '交付绩效',
prop: 'payMerits',
search: false,
sortable: true,
filter: true,
span: 24,
width: 120,
},
{
label: '后工序审理单',
children: [
{
label: '目标值',
prop: 'hgxTarget',
search: false,
sortable: true,
filter: true,
span: 24,
width: 120,
cell: true,
rules: [
{ required: true, message: '请输入姓名', trigger: 'blur' }
]
},
{
label: '实际值',
prop: 'hgxReality',
search: false,
sortable: true,
filter: true,
span: 24,
width: 120,
cell: true,
rules: [
{ required: true, message: '请输入姓名', trigger: 'blur' }
]
},
{
label: '绩效得分',
prop: 'hgxNum',
search: false,
sortable: true,
filter: true,
span: 24,
width: 120,
},
]
},
{
label: 'DPPM',
children: [
{
label: '目标值',
prop: 'dppmTarget',
search: false,
sortable: true,
filter: true,
span: 24,
width: 120,
cell: true,
rules: [
{ required: true, message: '请输入姓名', trigger: 'blur' }
]
},
{
label: '实际值',
prop: 'dppmReality',
search: false,
sortable: true,
filter: true,
span: 24,
width: 120,
cell: true,
rules: [
{ required: true, message: '请输入姓名', trigger: 'blur' }
]
},
{
label: '绩效得分',
prop: 'dppmNum',
search: false,
sortable: true,
filter: true,
span: 24,
width: 120,
},
]
},
{
label: '低级错误',
children: [
{
label: '目标值',
prop: 'djcwTarget',
search: false,
sortable: true,
filter: true,
span: 24,
width: 120,
},
{
label: '实际值',
prop: 'djcwReality',
search: false,
sortable: true,
filter: true,
span: 24,
width: 120,
cell: true,
rules: [
{ required: true, message: '请输入姓名', trigger: 'blur' }
]
},
{
label: '绩效得分',
prop: 'djcwNum',
search: false,
sortable: true,
filter: true,
span: 24,
width: 120,
},
]
},
{
label: '顾客投诉(扣分项)',
children: [
{
label: '目标值',
prop: 'qualityTsTarget',
search: false,
sortable: true,
filter: true,
span: 24,
width: 120,
},
{
label: '实际值',
prop: 'qualityTsReality',
search: false,
sortable: true,
filter: true,
span: 24,
width: 120,
cell: true,
rules: [
{ required: true, message: '请输入姓名', trigger: 'blur' }
]
},
{
label: '绩效得分',
prop: 'qualityTsNum',
search: false,
sortable: true,
filter: true,
span: 24,
width: 120,
},
]
},
{
label: '批次性(扣分项)',
children: [
{
label: '目标值',
prop: 'pcxTarget',
search: false,
sortable: true,
filter: true,
span: 24,
width: 120,
},
{
label: '实际值',
prop: 'pcxReality',
search: false,
sortable: true,
filter: true,
span: 24,
width: 120,
cell: true,
rules: [
{ required: true, message: '请输入姓名', trigger: 'blur' }
]
},
{
label: '绩效得分',
prop: 'pcxNum',
search: false,
sortable: true,
filter: true,
span: 24,
width: 120,
},
]
},
{
label: '多余物(扣分项)',
children: [
{
label: '目标值',
prop: 'dywTarget',
search: false,
sortable: true,
filter: true,
span: 24,
width: 120,
},
{
label: '实际值',
prop: 'dywReality',
search: false,
sortable: true,
filter: true,
span: 24,
width: 120,
cell: true,
rules: [
{ required: true, message: '请输入姓名', trigger: 'blur' }
]
},
{
label: '绩效得分',
prop: 'dywNum',
search: false,
sortable: true,
filter: true,
span: 24,
width: 120,
},
]
},
{
label: '清零问题(扣分项)',
children: [
{
label: '目标值',
prop: 'qlwtTarget',
search: false,
sortable: true,
filter: true,
span: 24,
width: 120,
},
{
label: '实际值',
prop: 'qlwtReality',
search: false,
sortable: true,
filter: true,
span: 24,
width: 120,
cell: true,
rules: [
{ required: true, message: '请输入姓名', trigger: 'blur' }
]
},
{
label: '绩效得分',
prop: 'qlwtNum',
search: false,
sortable: true,
filter: true,
span: 24,
width: 120,
},
]
},
{
label: '质量绩效',
prop: 'qualityMerits',
search: false,
sortable: true,
filter: true,
span: 24,
width: 120,
},
{
label: '发展能力',
children: [
{
label: '加分',
prop: 'growAbility',
search: false,
sortable: true,
filter: true,
span: 24,
width: 120,
cell: true,
rules: [
{ required: true, message: '请输入姓名', trigger: 'blur' }
]
},
]
},
{
label: '重大事项',
children: [
{
label: '加分',
prop: 'ajorIssues',
search: false,
sortable: true,
filter: true,
span: 24,
width: 120,
cell: true,
rules: [
{ required: true, message: '请输入姓名', trigger: 'blur' }
]
},
]
},
{
label: '最终得分',
prop: 'endScore',
search: false,
sortable: true,
filter: true,
span: 24,
width: 120,
},
{
label: '绩效等级',
prop: 'meritsScore',
search: false,
sortable: true,
filter: true,
span: 24,
width: 120,
},
{
label: '排名',
prop: 'ranking',
search: false,
sortable: true,
filter: true,
span: 24,
},
]
},
form: {
},
page: {
pageSize: 10,
currentPage: 1,
total: 0,
},
omId: null,
isOpen: false
}
},
methods: {
processSubmitData() {
this.$confirm('选中数据是否审核通过?', '提示', {
confirmButtonText: '确认',
cancelButtonText: '取消',
type: 'warning'
})
.then(() => {
})
// const dataList = this.$refs.myTable.getTableData().tableData;
// if (dataList.length === 0) {
// this.$message.warning('没有需要审核的数据');
// return;
// }
// this.$ajax
// .post('oemMerits/processSubmit', {
// dataList
// })
// .then((res) => {
// if (res.code === 0) {
// this.$message.success('审核成功');
// this.queryTable();
// }
// });
},
switchClick(flag) {
this.isOk = flag;
// this.queryTable();
},
updateData() {
// this.$refs.myTable.fullValidate((errMap) => {
// if (errMap) {
// return;
// }
// const dataList = this.$refs.myTable.getRecordset().updateRecords;
// this.$ajax
// .post('oemMerits/updateData', {
// dataList
// })
// .then((res) => {
// if (res.code === 0) {
// this.$message.success('重新计算成功');
// this.queryTable();
// }
// });
// });
},
submitData() {
// this.$refs.myTable.fullValidate((errMap) => {
// if (errMap) {
// return;
// }
// const dataList = this.$refs.myTable.getTableData().tableData;
// this.$ajax
// .post('oemMerits/submitData', {
// dataList
// })
// .then((res) => {
// if (res.code === 0) {
// this.$message.success('保存成功');
// this.tableData = [];
// }
// });
// });
},
addEdit() {
this.isOpen = true
},
closeDialog() {
this.isOpen = false
},
deleteClick(omId) {
this.$confirm('是否删除此数据?', '提示', {
confirmButtonText: '确认',
cancelButtonText: '取消',
type: 'warning'
})
.then(() => {
// this.$ajax.get('oemMerits/deleteByKey/' + omId).then((res) => {
// if (this.$ifAjax(res)) {
// this.$message.success(this.$t('global.deleteOk'));
// this.$refs.myTable.load();
// }
// });
})
.catch(() => {
this.$message.info('已取消');
});
},
async editClick(omId) {
this.omId = omId;
// const res = await this.$ajax.get('oemMerits/getByKey/' + omId);
// if (this.$ifAjax(res)) {
// this.rowItem = res.data;
// this.editOpen = true;
// }
},
handleDelete() {
if (this.selectionList.length === 0) {
this.$message.warning('请选择至少一条数据');
return;
}
this.$confirm('确定将选择数据删除?', {
confirmButtonText: '确定',
cancelButtonText: '取消',
type: 'warning',
}).then(() => {
})
},
// 多选
selectionChange(list) {
this.selectionList = list;
},
onLoad() {
this.loading = true
this.data = [
{
"bsOemCustomer": {
"abbreviation": "L076",
"address": "aaa",
"codeAndName": "L076/L076",
"contactMan": "aaa",
"contactPhone": "aaa",
"craftAbility": "镀银、挂镀银、喷砂、涂色标、铜合金化学镀镍、电镀镍、DL零件包装",
"curStatus": 0,
"curStatusText": "正常供货",
"email": "aaa",
"keyValue": 21,
"limitType": 0,
"ocCode": "L076",
"ocId": 21,
"ocName": "L076",
"oemPassword": null,
"partCodeYesOrNo": false,
"qualification": 10,
"qualificationTitle": null,
"region": "陕西省",
"updateTime": "2023-04-14 18:33:49"
},
"createMan": {
"userId": 541,
"userName": "崔殿龙"
},
"createTime": "2023-11-10 18:06:40",
"keyValue": 1,
"oaaId": 1,
"plate": "222"
},
{
"bsOemCustomer": {
"abbreviation": "L120",
"address": "aaa",
"codeAndName": "L120/L120",
"contactMan": "aaa",
"contactPhone": "aaa",
"craftAbility": "不锈钢涂福斯润滑剂、DL零件包装、",
"curStatus": 0,
"curStatusText": "正常供货",
"email": "aaa",
"keyValue": 2,
"limitType": 0,
"ocCode": "L120",
"ocId": 2,
"ocName": "L120",
"oemPassword": null,
"partCodeYesOrNo": false,
"qualification": 0,
"qualificationTitle": "民品&普军",
"region": "江苏省",
"updateTime": "2023-04-14 18:33:49"
},
"createMan": {
"userId": 541,
"userName": "崔殿龙"
},
"createTime": "2023-11-10 18:06:40",
"keyValue": 4,
"oaaId": 4,
"plate": "222"
},
{
"bsOemCustomer": {
"abbreviation": "L070",
"address": "aaa",
"codeAndName": "L070/L070",
"contactMan": "aaa",
"contactPhone": "aaa",
"craftAbility": "滚镀金或振镀金、局部镀厚金、闪镀金、镀铂金、局部退火",
"curStatus": 0,
"curStatusText": "正常供货",
"email": "aaa",
"keyValue": 5,
"limitType": 0,
"ocCode": "L070",
"ocId": 5,
"ocName": "L070",
"oemPassword": null,
"partCodeYesOrNo": false,
"qualification": 10,
"qualificationTitle": null,
"region": "江苏省",
"updateTime": "2023-04-14 18:33:49"
},
"createMan": {
"userId": 541,
"userName": "崔殿龙"
},
"createTime": "2023-12-06 17:24:48",
"keyValue": 21,
"oaaId": 21,
"plate": "222"
}
]
this.page.total = this.data.length
this.loading = false
setTimeout(() => {
this.selectionClear()
}, 500)
}
}
}
</script>
<style lang="scss" scoped></style>