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

764 lines
20 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="addEdit()">申请</el-button>
</template>
<template #menu-right> </template>
<template #menu="scope">
<!-- <el-button type="text" @click="editClick(scope.row.omId)">更新月份</el-button> -->
<el-button type="text" @click="deleteClick(scope.row.omId)">删除</el-button>
</template>
</avue-crud>
<addQuality
v-if="isOpen"
:showDialog="isOpen"
@closeDialog="closeDialog"
></addQuality>
</basic-container>
</template>
<script>
import addQuality from "./components/addQuality.vue";
export default {
components: {
addQuality,
},
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,
searchLabelPosition: "left",
searchLabelPosition: "left",
searchGutter: 24,
searchSpan: 6,
menuAlign: "left",
gridBtn: false,
searchMenuPosition: "right",
addBtnIcon: " ",
viewBtnIcon: " ",
delBtnIcon: " ",
editBtnIcon: " ",
align: "center",
column: [
{
4 months ago
label: "工艺能力",
prop: "plate",
sortable: true,
filter: true,
span: 24,
search: true,
width: 130,
searchLabelWidth: 80,
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: true,
sortable: true,
filter: true,
span: 24,
width: 120,
},
{
label: "月份",
prop: "updateTime",
search: false,
sortable: true,
filter: true,
span: 24,
width: 90,
},
{
label: "状态",
prop: "omStatus",
type: "select",
search: true,
sortable: true,
span: 24,
searchLabelWidth: 60,
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,
},
{
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,
},
{
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,
},
{
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,
},
{
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,
},
{
label: "实际值",
prop: "hgxReality",
search: false,
sortable: true,
filter: true,
span: 24,
width: 120,
},
{
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,
},
{
label: "实际值",
prop: "dppmReality",
search: false,
sortable: true,
filter: true,
span: 24,
width: 120,
},
{
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,
},
{
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,
},
{
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,
},
{
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,
},
{
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,
},
{
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,
},
],
},
{
label: "重大事项",
children: [
{
label: "加分",
prop: "ajorIssues",
search: false,
sortable: true,
filter: true,
span: 24,
width: 120,
},
],
},
{
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: {
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>