外协结算修改

dev-scheduling
jinna 1 month ago
parent bd21d71434
commit 1b71bdbe56
  1. 18
      src/api/outsourcingManagement/oemOrderSettlement.js
  2. 97
      src/views/oem/oemOrderSettlement/components/settlementAnomaly.vue
  3. 29
      src/views/oem/oemOrderSettlement/components/underReview.vue
  4. 17
      src/views/oem/oemOrderSettlement/components/unsettled.vue
  5. 1
      src/views/oem/oemOrderSettlement/index.vue
  6. 479
      src/views/oem/performanceApplication/index.vue
  7. 56
      src/views/oem/performanceCalculate/components/millMeritsProduce.vue
  8. 58
      src/views/oem/performanceCalculate/components/millMeritsQuality.vue
  9. 100
      src/views/oem/performanceCheck/index.vue

@ -68,4 +68,22 @@ export const supplement = params => {
method: 'post', method: 'post',
data: params, data: params,
}); });
};
// 匹配标准工序代码
export const matchStandard = params => {
return request({
url: '/api/mesOemStatement/matchStandardProcessCode',
method: 'post',
data: params,
});
};
// 更新数据
export const updateData = params => {
return request({
url: '/api/blade-desk/mesOemStatement/updateOrderDataError',
method: 'post',
data: params,
});
}; };

@ -1,6 +1,7 @@
<template> <template>
<div> <div>
<avue-crud :option="option" :table-loading="loading" :data="data" v-model="form" v-model:page="page" ref="crud" <avue-crud :option="option" :table-loading="loading" :data="data" v-model="form" v-model:page="page"
v-model:search="searchParams" ref="crud"
@row-del="rowDel" @search-change="searchChange" @search-reset="searchReset" @row-del="rowDel" @search-change="searchChange" @search-reset="searchReset"
@selection-change="selectionChange" @current-change="currentChange" @size-change="sizeChange" @selection-change="selectionChange" @current-change="currentChange" @size-change="sizeChange"
@refresh-change="refreshChange"> @refresh-change="refreshChange">
@ -15,8 +16,8 @@
</el-form> </el-form>
</template> </template>
<template #menu-right> <template #menu-right>
<el-button type="primary">匹配标准工序代码</el-button> <el-button type="primary" @click="handleMatch">匹配标准工序代码</el-button>
<el-button type="primary">更新数据</el-button> <el-button type="primary" @click="handleUpdate">更新数据</el-button>
</template> </template>
<template #menu> <template #menu>
@ -28,7 +29,7 @@
</template> </template>
<script> <script>
import settlementDailog from './SettlementDailog.vue' import settlementDailog from './SettlementDailog.vue'
import {getStatement,oemSettleAccountsItem} from "@/api/outsourcingManagement/oemOrderSettlement" import {getStatement,oemSettleAccountsItem,matchStandard,updateData} from "@/api/outsourcingManagement/oemOrderSettlement"
export default { export default {
components: { components: {
@ -328,7 +329,7 @@ export default {
valueFormat: 'YYYY-MM-DD', valueFormat: 'YYYY-MM-DD',
startPlaceholder: '开始时间', startPlaceholder: '开始时间',
endPlaceholder: '结束时间', endPlaceholder: '结束时间',
searchOrder:12, searchOrder:16,
}, },
{ {
label: '异常原因', label: '异常原因',
@ -339,6 +340,35 @@ export default {
search: true, search: true,
width: 120, width: 120,
searchOrder:2, searchOrder:2,
type:"select",
multiple:true,
dicData:[
// MESERP
{
label:"未找到报价单",
value:"未找到报价单"
},
{
label:"订单数据错误",
value:"订单数据错误"
},
{
label:"MES结算审核不通过",
value:"MES结算审核不通过"
},
{
label:"ERP结算审核不通过",
value:"ERP结算审核不通过"
},
{
label:"无需结算",
value:"无需结算"
},
{
label:"重复镀后入库",
value:"重复镀后入库"
}
]
}, },
{ {
label: '结算时间', label: '结算时间',
@ -368,7 +398,26 @@ export default {
// search: false, // search: false,
// width: 120, // width: 120,
// }, // },
{
label: '结算状态',
prop: 'rosStatusList',
sortable: true,
filter: true,
span: 24,
hide: true,
search: true,
width: 120,
type:'select',
searchOrder:15,
clearable:false,
dicData:[
// 1234567
{
label:'结算异常',
value:3
}
]
},
{ {
label: '外协厂商', label: '外协厂商',
prop: 'ocId', prop: 'ocId',
@ -379,7 +428,6 @@ export default {
hide: true, hide: true,
width: 120, width: 120,
type:'select', type:'select',
searchOrder:18,
dicUrl:"/api/blade-desk/BA/Oem/listForSelect", dicUrl:"/api/blade-desk/BA/Oem/listForSelect",
props:{ props:{
label:'ocName', label:'ocName',
@ -429,6 +477,10 @@ export default {
] ]
}, },
form: {}, form: {},
searchParams:{
rosStatusList:3,
memo:['未找到报价单','订单数据错误']
},
page: { page: {
pageSize: 10, pageSize: 10,
currentPage: 1, currentPage: 1,
@ -484,6 +536,24 @@ export default {
// //
}); });
}, },
//
handleMatch(){
matchStandard().then(res =>{
if(res.data.code == 200){
this.$message.success('匹配成功');
this.onLoad();
}
})
},
//
handleUpdate(){
updateData().then(res =>{
if(res.data.code == 200){
this.$message.success('更新成功');
this.onLoad()
}
})
},
handleDelete() { handleDelete() {
if (this.selectionList.length === 0) { if (this.selectionList.length === 0) {
this.$message.warning('请选择至少一条数据'); this.$message.warning('请选择至少一条数据');
@ -524,12 +594,17 @@ export default {
}, },
onLoad() { onLoad() {
this.loading = true this.loading = true
getStatement({ console.log('this.query',this.query)
let params = {
current:this.page.currentPage, current:this.page.currentPage,
size:this.page.pageSize, size:this.page.pageSize,
rosStatusList:'3', ...this.query,
...this.query postPlatingStorageTimeStart:this.query && this.query.putStoreTime && this.query.putStoreTime.length != 0 && this.query.putStoreTime[0],
}).then(res =>{ postPlatingStorageTimeEnd:this.query && this.query.putStoreTime && this.query.putStoreTime.length != 0 && this.query.putStoreTime[1],
memo:this.query && this.query.memo && this.query.memo.length != 0 && this.query.memo.join(';'),
}
if(params.putStoreTime) delete params.putStoreTime;
getStatement(params).then(res =>{
this.data = res.data.data.records this.data = res.data.data.records
this.page.total = res.data.data.total this.page.total = res.data.data.total
this.loading = false this.loading = false

@ -8,8 +8,10 @@
@refresh-change="refreshChange"> @refresh-change="refreshChange">
<template #menu-left> <template #menu-left>
<el-button type="primary" @click="settleConfirm">结算确认</el-button> <el-button type="primary" @click="settleConfirm">结算确认</el-button>
<el-button type="primary" @click="initiateReview">发起审核</el-button>
</template> </template>
</avue-crud> </avue-crud>
<!-- 结算确认 -->
<el-dialog title="结算确认" :modelValue="isConfirm" append-to-body width="30%"> <el-dialog title="结算确认" :modelValue="isConfirm" append-to-body width="30%">
<el-form :model="settleForm" :rules="settleRules" ref="settleForm"> <el-form :model="settleForm" :rules="settleRules" ref="settleForm">
<el-form-item label="确认结果" prop="confirmResult"> <el-form-item label="确认结果" prop="confirmResult">
@ -32,6 +34,20 @@
</span> </span>
</template> </template>
</el-dialog> </el-dialog>
<!-- 发起审核 -->
<el-dialog title="发起审核" :modelValue="isReview" append-to-body width="30%">
<el-form :model="reviewForm" :rules="reviewRules" ref="reviewForm">
<el-form-item label="结算说明" prop="reason">
<el-input v-model="reviewForm.reason" type="textarea" placeholder="请输入结算说明"></el-input>
</el-form-item>
</el-form>
<template #footer>
<span class="dialog-footer">
<el-button @click="isReview = false">取消</el-button>
<el-button type="primary" @click="summitReview">确定</el-button>
</span>
</template>
</el-dialog>
</div> </div>
</template> </template>
@ -59,6 +75,11 @@ export default {
confirmResult:[{required: true, message: '请选择结算结果',trigger:'blur'}], confirmResult:[{required: true, message: '请选择结算结果',trigger:'blur'}],
confirmReason:[{required: false, message: '请填写异常原因',trigger:'blur'}], confirmReason:[{required: false, message: '请填写异常原因',trigger:'blur'}],
}, },
isReview:false,
reviewForm:{},
reviewRules:{
reason:[{required: true, message: '请填写结算说明',trigger:'blur'}]
},
option:{ option:{
height: 'auto', height: 'auto',
calcHeight: 32, calcHeight: 32,
@ -492,6 +513,14 @@ export default {
} }
this.isConfirm = true this.isConfirm = true
}, },
initiateReview(){
if(this.data.length == 0){
this.$message.error('请先查询数据!')
return
}
this.re
this.isReview = true
},
changeResult(val){ changeResult(val){
console.log('val-----------------',val) console.log('val-----------------',val)
if(val == 2){ if(val == 2){

@ -684,16 +684,27 @@ export default {
// this.$message.warning(''); // this.$message.warning('');
// return; // return;
// } // }
this.$confirm('确认当前页面所有数据无需结算?', { if(this.data.length == 0){
this.$message.error('请先查询数据!')
return
}
this.$confirm('确认页面所有数据无需结算?', {
confirmButtonText: '确定', confirmButtonText: '确定',
cancelButtonText: '取消', cancelButtonText: '取消',
type: 'warning', type: 'warning',
}).then(() => { }).then(() => {
noSettlementItem(this.selectionList).then(() => { let params = {
...this.query,
postPlatingStorageTimeStart:this.query && this.query.putStoreTime && this.query.putStoreTime[0],
postPlatingStorageTimeEnd:this.query && this.query.putStoreTime && this.query.putStoreTime[1],
}
if(params.putStoreTime) delete params.putStoreTime;
console.log('params----------',params)
noSettlementItem(params).then(() => {
this.$message.success('无需结算成功'); this.$message.success('无需结算成功');
this.onLoad(); this.onLoad();
}).catch(() => { }).catch(() => {
this.$message.error('无需结算失败'); // this.$message.error('');
}); });
}).catch(() => { }).catch(() => {
// //

@ -5,6 +5,7 @@
<el-tab-pane label="待确认" name="2"></el-tab-pane> <el-tab-pane label="待确认" name="2"></el-tab-pane>
<!-- <el-tab-pane label="结算中" name="2"></el-tab-pane> --> <!-- <el-tab-pane label="结算中" name="2"></el-tab-pane> -->
<el-tab-pane label="结算异常" name="3"></el-tab-pane> <el-tab-pane label="结算异常" name="3"></el-tab-pane>
<el-tab-pane label="审核中" name="6"></el-tab-pane>
<el-tab-pane label="结算完成" name="4"></el-tab-pane> <el-tab-pane label="结算完成" name="4"></el-tab-pane>
</el-tabs> </el-tabs>
<unsettled v-if="activeName=='1'"></unsettled> <unsettled v-if="activeName=='1'"></unsettled>

@ -15,26 +15,26 @@
@size-change="sizeChange" @size-change="sizeChange"
@refresh-change="refreshChange" @refresh-change="refreshChange"
@on-load="onLoad" @on-load="onLoad"
@sort-change="sortChange"
> >
<template #menu-left> <template #menu-left>
<el-button type="primary" @click="addEdit()">申请</el-button> <el-button type="primary" @click="addEdit()" v-if="permission.performanceApplication_apply">申请</el-button>
</template> </template>
<template #menu-right> </template> <template #menu-right> </template>
<template #menu="scope"> <template #menu="scope">
<!-- <el-button type="text" @click="editClick(scope.row.omId)">更新月份</el-button> --> <!-- <el-button type="text" @click="editClick(scope.row.omId)">更新月份</el-button> -->
<el-button type="text" v-if="scope.row.omStatus < 3" @click="deleteClick(scope.row)">删除</el-button> <el-button type="text" v-if="scope.row.omStatus < 3 && permission.performanceApplication_delete" @click="deleteClick(scope.row)"
>删除</el-button
>
</template> </template>
</avue-crud> </avue-crud>
<addQuality <addQuality v-if="isOpen" :showDialog="isOpen" @closeDialog="closeDialog"></addQuality>
v-if="isOpen"
:showDialog="isOpen"
@closeDialog="closeDialog"
></addQuality>
</basic-container> </basic-container>
</template> </template>
<script> <script>
import addQuality from "./components/addQuality.vue"; import addQuality from './components/addQuality.vue';
import {getList,performanceApplyDel} from "@/api/outsourcingManagement/performanceApplication" import { getList, performanceApplyDel } from '@/api/outsourcingManagement/performanceApplication';
import { mapGetters } from "vuex";
export default { export default {
components: { components: {
addQuality, addQuality,
@ -42,10 +42,10 @@ export default {
data() { data() {
return { return {
selectionList: [], selectionList: [],
loading:false, loading: false,
query:{}, query: {},
option: { option: {
height: "auto", height: 'auto',
calcHeight: 32, calcHeight: 32,
tip: false, tip: false,
// size: "medium", // size: "medium",
@ -62,12 +62,12 @@ export default {
delBtn: false, delBtn: false,
addBtn: false, addBtn: false,
editBtn: false, editBtn: false,
addBtnText: "申请", addBtnText: '申请',
editBtnText: "修改", editBtnText: '修改',
viewBtnIcon: " ", viewBtnIcon: ' ',
delBtnIcon: " ", delBtnIcon: ' ',
editBtnIcon: " ", editBtnIcon: ' ',
viewBtnText: "详情", viewBtnText: '详情',
labelWidth: 120, labelWidth: 120,
menuWidth: 80, menuWidth: 80,
dialogWidth: 640, dialogWidth: 640,
@ -80,40 +80,40 @@ export default {
excelBtn: true, excelBtn: true,
columnSort: true, columnSort: true,
showOverflowTooltip: true, showOverflowTooltip: true,
searchLabelPosition: "left", searchLabelPosition: 'left',
searchLabelPosition: "left", searchLabelPosition: 'left',
searchGutter: 24, searchGutter: 24,
searchSpan: 6, searchSpan: 6,
menuAlign: "left", menuAlign: 'left',
gridBtn: false, gridBtn: false,
searchMenuPosition: "right", searchMenuPosition: 'right',
addBtnIcon: " ", addBtnIcon: ' ',
viewBtnIcon: " ", viewBtnIcon: ' ',
delBtnIcon: " ", delBtnIcon: ' ',
editBtnIcon: " ", editBtnIcon: ' ',
align: "center", align: 'center',
column: [ column: [
{ {
label: "工艺能力", label: '工艺能力',
prop: "caId", prop: 'caId',
sortable: true, sortable: "custom",
filter: true, filter: true,
hide:true, hide: true,
span: 24, span: 24,
search: true, search: true,
width: 130, width: 130,
searchLabelWidth: 80, searchLabelWidth: 80,
type: "select", type: 'select',
dicUrl:"/api/blade-desk/BA/craftAbility/findList", dicUrl: '/api/blade-desk/BA/craftAbility/findList',
props:{ props: {
label: "caName", label: 'caName',
value:'id' value: 'id',
}, },
}, },
{ {
label: "工艺能力", label: '工艺能力',
prop: "caName", prop: 'caName',
sortable: true, sortable: "custom",
filter: true, filter: true,
span: 24, span: 24,
search: false, search: false,
@ -129,65 +129,65 @@ export default {
// ], // ],
}, },
{ {
label: "厂家代码", label: '厂家代码',
prop: "oemCode", prop: 'oemCode',
// bind: "bsOemCustomer.ocCode", // bind: "bsOemCustomer.ocCode",
search: false, search: false,
sortable: true, sortable: "custom",
filter: true, filter: true,
span: 24, span: 24,
width: 120, width: 120,
}, },
{ {
label: "厂家名称", label: '厂家名称',
prop: "oemName", prop: 'oemName',
// bind: "bsOemCustomer.ocName", // bind: "bsOemCustomer.ocName",
search: true, search: true,
sortable: true, sortable: "custom",
filter: true, filter: true,
span: 24, span: 24,
width: 120, width: 120,
}, },
{ {
label: "月份", label: '月份',
prop: "monthStr", prop: 'monthStr',
search: false, search: false,
sortable: true, // sortable: "custom",
filter: true, filter: true,
span: 24, span: 24,
width: 90, width: 90,
}, },
{ {
label:"状态", label: '状态',
prop:"statusList", prop: 'statusList',
hide:true, hide: true,
search:true, search: true,
type:'select', type: 'select',
dicData:[ dicData: [
{ {
value:1, value: 1,
label:"新建" label: '新建',
}, },
{ {
value:2, value: 2,
label:"填写中" label: '填写中',
}, },
{ {
value:3, value: 3,
label:"已评审" label: '已评审',
}, },
{ {
value:4, value: 4,
label:"已审核" label: '已审核',
}, },
] ],
}, },
{ {
label: "状态", label: '状态',
prop: "omStatusTitle", prop: 'omStatusTitle',
// type: "select", // type: "select",
search: false, search: false,
sortable: true, // sortable: "custom",
span: 24, span: 24,
searchLabelWidth: 60, searchLabelWidth: 60,
// dicData: [ // dicData: [
@ -210,31 +210,31 @@ export default {
// ], // ],
}, },
{ {
label: "计划准时完成", label: '计划准时完成',
children: [ children: [
{ {
label: "目标值(%)", label: '目标值(%)',
prop: "jhzsTarget", prop: 'jhzsTarget',
search: false, search: false,
sortable: true, sortable: "custom",
filter: true, filter: true,
span: 24, span: 24,
width: 120, width: 120,
}, },
{ {
label: "实际值(%)", label: '实际值(%)',
prop: "jhzsReality", prop: 'jhzsReality',
search: false, search: false,
sortable: true, sortable: "custom",
filter: true, filter: true,
span: 24, span: 24,
width: 120, width: 120,
}, },
{ {
label: "绩效得分", label: '绩效得分',
prop: "jhzsNum", prop: 'jhzsNum',
search: false, search: false,
sortable: true, sortable: "custom",
filter: true, filter: true,
span: 24, span: 24,
width: 120, width: 120,
@ -242,31 +242,31 @@ export default {
], ],
}, },
{ {
label: "重点零件完成率", label: '重点零件完成率',
children: [ children: [
{ {
label: "目标值(%)", label: '目标值(%)',
prop: "zdljTarget", prop: 'zdljTarget',
search: false, search: false,
sortable: true, sortable: "custom",
filter: true, filter: true,
span: 24, span: 24,
width: 120, width: 120,
}, },
{ {
label: "实际值(%)", label: '实际值(%)',
prop: "zdljReality", prop: 'zdljReality',
search: false, search: false,
sortable: true, sortable: "custom",
filter: true, filter: true,
span: 24, span: 24,
width: 120, width: 120,
}, },
{ {
label: "绩效得分", label: '绩效得分',
prop: "zdljNum", prop: 'zdljNum',
search: false, search: false,
sortable: true, sortable: "custom",
filter: true, filter: true,
span: 24, span: 24,
width: 120, width: 120,
@ -274,31 +274,31 @@ export default {
], ],
}, },
{ {
label: "清欠项", label: '清欠项',
children: [ children: [
{ {
label: "目标值", label: '目标值',
prop: "qqxTarget", prop: 'qqxTarget',
search: false, search: false,
sortable: true, sortable: "custom",
filter: true, filter: true,
span: 24, span: 24,
width: 120, width: 120,
}, },
{ {
label: "实际值", label: '实际值',
prop: "qqxReality", prop: 'qqxReality',
search: false, search: false,
sortable: true, sortable: "custom",
filter: true, filter: true,
span: 24, span: 24,
width: 120, width: 120,
}, },
{ {
label: "绩效得分", label: '绩效得分',
prop: "qqxNum", prop: 'qqxNum',
search: false, search: false,
sortable: true, sortable: "custom",
filter: true, filter: true,
span: 24, span: 24,
width: 120, width: 120,
@ -306,31 +306,31 @@ export default {
], ],
}, },
{ {
label: "客户投诉(扣分项)", label: '客户投诉(扣分项)',
children: [ children: [
{ {
label: "目标值", label: '目标值',
prop: "produceTsTarget", prop: 'produceTsTarget',
search: false, search: false,
sortable: true, sortable: "custom",
filter: true, filter: true,
span: 24, span: 24,
width: 120, width: 120,
}, },
{ {
label: "实际值", label: '实际值',
prop: "produceTsReality", prop: 'produceTsReality',
search: false, search: false,
sortable: true, sortable: "custom",
filter: true, filter: true,
span: 24, span: 24,
width: 120, width: 120,
}, },
{ {
label: "绩效得分", label: '绩效得分',
prop: "produceTsNum", prop: 'produceTsNum',
search: false, search: false,
sortable: true, sortable: "custom",
filter: true, filter: true,
span: 24, span: 24,
width: 120, width: 120,
@ -338,40 +338,40 @@ export default {
], ],
}, },
{ {
label: "交付绩效", label: '交付绩效',
prop: "payMerits", prop: 'payMerits',
search: false, search: false,
sortable: true, sortable: "custom",
filter: true, filter: true,
span: 24, span: 24,
width: 120, width: 120,
}, },
{ {
label: "后工序审理单", label: '后工序审理单',
children: [ children: [
{ {
label: "目标值", label: '目标值',
prop: "hgxTarget", prop: 'hgxTarget',
search: false, search: false,
sortable: true, sortable: "custom",
filter: true, filter: true,
span: 24, span: 24,
width: 120, width: 120,
}, },
{ {
label: "实际值", label: '实际值',
prop: "hgxReality", prop: 'hgxReality',
search: false, search: false,
sortable: true, sortable: "custom",
filter: true, filter: true,
span: 24, span: 24,
width: 120, width: 120,
}, },
{ {
label: "绩效得分", label: '绩效得分',
prop: "hgxNum", prop: 'hgxNum',
search: false, search: false,
sortable: true, sortable: "custom",
filter: true, filter: true,
span: 24, span: 24,
width: 120, width: 120,
@ -379,31 +379,31 @@ export default {
], ],
}, },
{ {
label: "DPPM", label: 'DPPM',
children: [ children: [
{ {
label: "目标值", label: '目标值',
prop: "dppmTarget", prop: 'dppmTarget',
search: false, search: false,
sortable: true, sortable: "custom",
filter: true, filter: true,
span: 24, span: 24,
width: 120, width: 120,
}, },
{ {
label: "实际值", label: '实际值',
prop: "dppmReality", prop: 'dppmReality',
search: false, search: false,
sortable: true, sortable: "custom",
filter: true, filter: true,
span: 24, span: 24,
width: 120, width: 120,
}, },
{ {
label: "绩效得分", label: '绩效得分',
prop: "dppmNum", prop: 'dppmNum',
search: false, search: false,
sortable: true, sortable: "custom",
filter: true, filter: true,
span: 24, span: 24,
width: 120, width: 120,
@ -411,31 +411,31 @@ export default {
], ],
}, },
{ {
label: "低级错误", label: '低级错误',
children: [ children: [
{ {
label: "目标值", label: '目标值',
prop: "djcwTarget", prop: 'djcwTarget',
search: false, search: false,
sortable: true, sortable: "custom",
filter: true, filter: true,
span: 24, span: 24,
width: 120, width: 120,
}, },
{ {
label: "实际值", label: '实际值',
prop: "djcwReality", prop: 'djcwReality',
search: false, search: false,
sortable: true, sortable: "custom",
filter: true, filter: true,
span: 24, span: 24,
width: 120, width: 120,
}, },
{ {
label: "绩效得分", label: '绩效得分',
prop: "djcwNum", prop: 'djcwNum',
search: false, search: false,
sortable: true, sortable: "custom",
filter: true, filter: true,
span: 24, span: 24,
width: 120, width: 120,
@ -443,31 +443,31 @@ export default {
], ],
}, },
{ {
label: "顾客投诉(扣分项)", label: '顾客投诉(扣分项)',
children: [ children: [
{ {
label: "目标值", label: '目标值',
prop: "qualityTsTarget", prop: 'qualityTsTarget',
search: false, search: false,
sortable: true, sortable: "custom",
filter: true, filter: true,
span: 24, span: 24,
width: 120, width: 120,
}, },
{ {
label: "实际值", label: '实际值',
prop: "qualityTsReality", prop: 'qualityTsReality',
search: false, search: false,
sortable: true, sortable: "custom",
filter: true, filter: true,
span: 24, span: 24,
width: 120, width: 120,
}, },
{ {
label: "绩效得分", label: '绩效得分',
prop: "qualityTsNum", prop: 'qualityTsNum',
search: false, search: false,
sortable: true, sortable: "custom",
filter: true, filter: true,
span: 24, span: 24,
width: 120, width: 120,
@ -475,31 +475,31 @@ export default {
], ],
}, },
{ {
label: "批次性(扣分项)", label: '批次性(扣分项)',
children: [ children: [
{ {
label: "目标值", label: '目标值',
prop: "pcxTarget", prop: 'pcxTarget',
search: false, search: false,
sortable: true, sortable: "custom",
filter: true, filter: true,
span: 24, span: 24,
width: 120, width: 120,
}, },
{ {
label: "实际值", label: '实际值',
prop: "pcxReality", prop: 'pcxReality',
search: false, search: false,
sortable: true, sortable: "custom",
filter: true, filter: true,
span: 24, span: 24,
width: 120, width: 120,
}, },
{ {
label: "绩效得分", label: '绩效得分',
prop: "pcxNum", prop: 'pcxNum',
search: false, search: false,
sortable: true, sortable: "custom",
filter: true, filter: true,
span: 24, span: 24,
width: 120, width: 120,
@ -507,31 +507,31 @@ export default {
], ],
}, },
{ {
label: "多余物(扣分项)", label: '多余物(扣分项)',
children: [ children: [
{ {
label: "目标值", label: '目标值',
prop: "dywTarget", prop: 'dywTarget',
search: false, search: false,
sortable: true, sortable: "custom",
filter: true, filter: true,
span: 24, span: 24,
width: 120, width: 120,
}, },
{ {
label: "实际值", label: '实际值',
prop: "dywReality", prop: 'dywReality',
search: false, search: false,
sortable: true, sortable: "custom",
filter: true, filter: true,
span: 24, span: 24,
width: 120, width: 120,
}, },
{ {
label: "绩效得分", label: '绩效得分',
prop: "dywNum", prop: 'dywNum',
search: false, search: false,
sortable: true, sortable: "custom",
filter: true, filter: true,
span: 24, span: 24,
width: 120, width: 120,
@ -539,31 +539,31 @@ export default {
], ],
}, },
{ {
label: "清零问题(扣分项)", label: '清零问题(扣分项)',
children: [ children: [
{ {
label: "目标值", label: '目标值',
prop: "qlwtTarget", prop: 'qlwtTarget',
search: false, search: false,
sortable: true, sortable: "custom",
filter: true, filter: true,
span: 24, span: 24,
width: 120, width: 120,
}, },
{ {
label: "实际值", label: '实际值',
prop: "qlwtReality", prop: 'qlwtReality',
search: false, search: false,
sortable: true, sortable: "custom",
filter: true, filter: true,
span: 24, span: 24,
width: 120, width: 120,
}, },
{ {
label: "绩效得分", label: '绩效得分',
prop: "qlwtNum", prop: 'qlwtNum',
search: false, search: false,
sortable: true, sortable: "custom",
filter: true, filter: true,
span: 24, span: 24,
width: 120, width: 120,
@ -571,22 +571,22 @@ export default {
], ],
}, },
{ {
label: "质量绩效", label: '质量绩效',
prop: "qualityMerits", prop: 'qualityMerits',
search: false, search: false,
sortable: true, sortable: "custom",
filter: true, filter: true,
span: 24, span: 24,
width: 120, width: 120,
}, },
{ {
label: "发展能力", label: '发展能力',
children: [ children: [
{ {
label: "加分", label: '加分',
prop: "growAbility", prop: 'growAbility',
search: false, search: false,
sortable: true, sortable: "custom",
filter: true, filter: true,
span: 24, span: 24,
width: 120, width: 120,
@ -594,13 +594,13 @@ export default {
], ],
}, },
{ {
label: "重大事项", label: '重大事项',
children: [ children: [
{ {
label: "加分", label: '加分',
prop: "ajorIssues", prop: 'ajorIssues',
search: false, search: false,
sortable: true, sortable: "custom",
filter: true, filter: true,
span: 24, span: 24,
width: 120, width: 120,
@ -608,28 +608,28 @@ export default {
], ],
}, },
{ {
label: "最终得分", label: '最终得分',
prop: "endScore", prop: 'endScore',
search: false, search: false,
sortable: true, sortable: "custom",
filter: true, filter: true,
span: 24, span: 24,
width: 120, width: 120,
}, },
{ {
label: "绩效等级", label: '绩效等级',
prop: "meritsScore", prop: 'meritsScore',
search: false, search: false,
sortable: true, sortable: "custom",
filter: true, filter: true,
span: 24, span: 24,
width: 120, width: 120,
}, },
{ {
label: "排名", label: '排名',
prop: "ranking", prop: 'ranking',
search: false, search: false,
sortable: true, sortable: "custom",
filter: true, filter: true,
span: 24, span: 24,
}, },
@ -645,31 +645,46 @@ export default {
isOpen: false, isOpen: false,
}; };
}, },
computed: {
...mapGetters(["permission"]),
},
methods: { methods: {
//
sortChange({ prop, order }) {
console.log('prop----------', prop);
console.log('order----------', order);
this.query.ascs = undefined;
this.query.descs = undefined;
const orderByFieldKey = order === 'ascending' ? 'ascs' : 'descs';
const orderByField = prop.replace(/([a-z])([A-Z0-9])/g, '$1_$2').toUpperCase();
this.query[orderByFieldKey] = orderByField;
// //
this.onLoad(this.page, this.query);
},
addEdit() { addEdit() {
this.isOpen = true; this.isOpen = true;
}, },
closeDialog(val) { closeDialog(val) {
this.isOpen = false; this.isOpen = false;
if(val){ if (val) {
this.onLoad() this.onLoad();
} }
}, },
deleteClick(row) { deleteClick(row) {
this.$confirm("是否删除此数据?", "提示", { this.$confirm('是否删除此数据?', '提示', {
confirmButtonText: "确认", confirmButtonText: '确认',
cancelButtonText: "取消", cancelButtonText: '取消',
type: "warning", type: 'warning',
}).then(() => { }).then(() => {
performanceApplyDel({ performanceApplyDel({
ids:row.id ids: row.id,
}).then(res =>{ }).then(res => {
if(res.data.code == 200){ if (res.data.code == 200) {
this.$message.success('删除成功') this.$message.success('删除成功');
this.onLoad() this.onLoad();
} }
}) });
}) });
}, },
async editClick(omId) { async editClick(omId) {
this.omId = omId; this.omId = omId;
@ -682,30 +697,30 @@ export default {
handleDelete() { handleDelete() {
if (this.selectionList.length === 0) { if (this.selectionList.length === 0) {
this.$message.warning("请选择至少一条数据"); this.$message.warning('请选择至少一条数据');
return; return;
} }
this.$confirm("确定将选择数据删除?", { this.$confirm('确定将选择数据删除?', {
confirmButtonText: "确定", confirmButtonText: '确定',
cancelButtonText: "取消", cancelButtonText: '取消',
type: "warning", type: 'warning',
}).then(() => {}); }).then(() => {});
}, },
searchChange(params, done){ searchChange(params, done) {
this.query = params; this.query = params;
this.page.currentPage = 1 this.page.currentPage = 1;
this.onLoad() this.onLoad();
done() done();
}, },
searchReset(){ searchReset() {
this.query = {} this.query = {};
this.onLoad() this.onLoad();
}, },
currentChange(currentPage){ currentChange(currentPage) {
this.page.currentPage = currentPage this.page.currentPage = currentPage;
}, },
sizeChange(pageSize){ sizeChange(pageSize) {
this.page.pageSize = pageSize this.page.pageSize = pageSize;
}, },
// //
selectionChange(list) { selectionChange(list) {
@ -718,11 +733,11 @@ export default {
current: this.page.currentPage, current: this.page.currentPage,
size: this.page.pageSize, size: this.page.pageSize,
...this.query, ...this.query,
}).then((res) => { }).then(res => {
this.data = res.data.data.records; this.data = res.data.data.records;
this.page.total = res.data.data.total; this.page.total = res.data.data.total;
this.loading = false; this.loading = false;
}) });
// this.data = [ // this.data = [
// { // {
// bsOemCustomer: { // bsOemCustomer: {

@ -14,10 +14,11 @@
@size-change="sizeChange" @size-change="sizeChange"
@refresh-change="refreshChange" @refresh-change="refreshChange"
@on-load="onLoad" @on-load="onLoad"
@sort-change="sortChange"
> >
<template #menu-left> <template #menu-left>
<el-button type="primary" @click="maintenanceClick">维护 </el-button> <el-button type="primary" @click="maintenanceClick" v-if="permission.millMeritsProduce_maintain">维护 </el-button>
<el-button type="primary" @click="proofreadClick">校对 </el-button> <el-button type="primary" @click="proofreadClick" v-if="permission.millMeritsProduce_check">校对 </el-button>
</template> </template>
<template #menu-right> </template> <template #menu-right> </template>
<template #menu="scope"> </template> <template #menu="scope"> </template>
@ -69,6 +70,7 @@
</template> </template>
<script> <script>
import {getList,maintenanceData,checkData} from "@/api/outsourcingManagement/performanceCalculate" import {getList,maintenanceData,checkData} from "@/api/outsourcingManagement/performanceCalculate"
import { mapGetters } from "vuex";
export default { export default {
data() { data() {
return { return {
@ -127,7 +129,7 @@ export default {
{ {
label: "工艺能力", label: "工艺能力",
prop: "caName", prop: "caName",
sortable: true, sortable: "custom",
filter: true, filter: true,
span: 24, span: 24,
search: false, search: false,
@ -138,8 +140,9 @@ export default {
prop: "oemCode", prop: "oemCode",
// bind: "bsOemCustomer.ocCode", // bind: "bsOemCustomer.ocCode",
search: false, search: false,
sortable: true, sortable: "custom",
filter: true, filter: true,
width: 120,
span: 24, span: 24,
}, },
{ {
@ -147,8 +150,9 @@ export default {
prop: "oemName", prop: "oemName",
// bind: "bsOemCustomer.ocName", // bind: "bsOemCustomer.ocName",
search: false, search: false,
sortable: true, sortable: "custom",
filter: true, filter: true,
width: 120,
span: 24, span: 24,
}, },
{ {
@ -158,16 +162,18 @@ export default {
label: "目标值(%)", label: "目标值(%)",
prop: "jhzsTarget", prop: "jhzsTarget",
search: false, search: false,
sortable: true, sortable: "custom",
filter: true, filter: true,
span: 24, span: 24,
width:100,
}, },
{ {
label: "实际值(%)", label: "实际值(%)",
prop: "jhzsReality", prop: "jhzsReality",
search: false, search: false,
sortable: true, sortable: "custom",
filter: true, filter: true,
width:110,
span: 24, span: 24,
// cell: true, // cell: true,
// rules: [{ required: true, message: "", trigger: "blur" }], // rules: [{ required: true, message: "", trigger: "blur" }],
@ -181,15 +187,17 @@ export default {
label: "目标值(%)", label: "目标值(%)",
prop: "zdljTarget", prop: "zdljTarget",
search: false, search: false,
sortable: true, sortable: "custom",
filter: true, filter: true,
width:100,
span: 24, span: 24,
}, },
{ {
label: "实际值(%)", label: "实际值(%)",
prop: "zdljReality", prop: "zdljReality",
search: false, search: false,
sortable: true, sortable: "custom",
width:110,
filter: true, filter: true,
span: 24, span: 24,
// cell: true, // cell: true,
@ -204,7 +212,7 @@ export default {
label: "目标值", label: "目标值",
prop: "qqxTarget", prop: "qqxTarget",
search: false, search: false,
sortable: true, sortable: "custom",
filter: true, filter: true,
span: 24, span: 24,
}, },
@ -212,7 +220,8 @@ export default {
label: "实际值", label: "实际值",
prop: "qqxReality", prop: "qqxReality",
search: false, search: false,
sortable: true, sortable: "custom",
width:100,
filter: true, filter: true,
span: 24, span: 24,
// cell: true, // cell: true,
@ -227,7 +236,7 @@ export default {
label: "目标值", label: "目标值",
prop: "produceTsTarget", prop: "produceTsTarget",
search: false, search: false,
sortable: true, sortable: "custom",
filter: true, filter: true,
span: 24, span: 24,
}, },
@ -235,7 +244,8 @@ export default {
label: "实际值", label: "实际值",
prop: "produceTsReality", prop: "produceTsReality",
search: false, search: false,
sortable: true, sortable: "custom",
width:100,
filter: true, filter: true,
span: 24, span: 24,
// cell: true, // cell: true,
@ -250,8 +260,9 @@ export default {
label: "加分", label: "加分",
prop: "growAbility", prop: "growAbility",
search: false, search: false,
sortable: true, sortable: "custom",
filter: true, filter: true,
width:100,
span: 24, span: 24,
// cell: true, // cell: true,
// rules: [{ required: true, message: "", trigger: "blur" }], // rules: [{ required: true, message: "", trigger: "blur" }],
@ -262,7 +273,7 @@ export default {
label: "状态", label: "状态",
prop: "produceStatus", prop: "produceStatus",
search: false, search: false,
sortable: true, sortable: "custom",
filter: true, filter: true,
span: 24, span: 24,
}, },
@ -278,7 +289,22 @@ export default {
}, },
}; };
}, },
computed: {
...mapGetters(["permission"]),
},
methods: { methods: {
//
sortChange({ prop, order }) {
console.log('prop----------', prop);
console.log('order----------', order);
this.query.ascs = undefined;
this.query.descs = undefined;
const orderByFieldKey = order === 'ascending' ? 'ascs' : 'descs';
const orderByField = prop.replace(/([a-z])([A-Z0-9])/g, '$1_$2').toUpperCase();
this.query[orderByFieldKey] = orderByField;
// //
this.onLoad(this.page, this.query);
},
calcData(a,b){ calcData(a,b){
// //
const fieldsToCheck = ['jhzsReality','zdljReality','qqxReality', 'produceTsReality', 'growAbility']; const fieldsToCheck = ['jhzsReality','zdljReality','qqxReality', 'produceTsReality', 'growAbility'];

@ -7,10 +7,10 @@
<avue-crud :option="option" :table-loading="loading" :data="data" v-model="form" v-model:page="page" ref="crud" <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" @row-del="rowDel" @search-change="searchChange" @search-reset="searchReset"
@selection-change="selectionChange" @current-change="currentChange" @size-change="sizeChange" @selection-change="selectionChange" @current-change="currentChange" @size-change="sizeChange"
@refresh-change="refreshChange" @on-load="onLoad"> @refresh-change="refreshChange" @on-load="onLoad" @sort-change="sortChange">
<template #menu-left> <template #menu-left>
<el-button type="primary" @click="maintenanceClick">维护</el-button> <el-button type="primary" @click="maintenanceClick" v-if="permission.millMeritsQuality_maintain">维护</el-button>
<el-button type="primary" @click="proofreadClick">校对</el-button> <el-button type="primary" @click="proofreadClick" v-if="permission.millMeritsQuality_check">校对</el-button>
</template> </template>
<template #menu-right> <template #menu-right>
@ -104,6 +104,7 @@
</template> </template>
<script> <script>
import { getList,maintenanceData,checkData } from "@/api/outsourcingManagement/performanceCalculate" import { getList,maintenanceData,checkData } from "@/api/outsourcingManagement/performanceCalculate"
import { mapGetters } from "vuex";
export default { export default {
components: { components: {
@ -165,7 +166,7 @@ export default {
{ {
label: '工艺能力', label: '工艺能力',
prop: 'caName', prop: 'caName',
sortable: true, sortable: "custom",
filter: true, filter: true,
span: 24, span: 24,
search: false, search: false,
@ -175,7 +176,7 @@ export default {
label: '厂家代码', label: '厂家代码',
prop: 'oemCode', prop: 'oemCode',
search: false, search: false,
sortable: true, sortable: "custom",
filter: true, filter: true,
span: 24, span: 24,
width: 120, width: 120,
@ -185,7 +186,7 @@ export default {
prop: 'oemName', prop: 'oemName',
// bind: 'bsOemCustomer.ocName', // bind: 'bsOemCustomer.ocName',
search: false, search: false,
sortable: true, sortable: "custom",
filter: true, filter: true,
span: 24, span: 24,
width: 120, width: 120,
@ -198,7 +199,7 @@ export default {
label: '目标值', label: '目标值',
prop: 'hgxTarget', prop: 'hgxTarget',
search: false, search: false,
sortable: true, sortable: "custom",
filter: true, filter: true,
span: 24, span: 24,
width: 120, width: 120,
@ -210,7 +211,7 @@ export default {
label: '实际值', label: '实际值',
prop: 'hgxReality', prop: 'hgxReality',
search: false, search: false,
sortable: true, sortable: "custom",
filter: true, filter: true,
span: 24, span: 24,
width: 120, width: 120,
@ -228,7 +229,7 @@ export default {
label: '目标值', label: '目标值',
prop: 'dppmTarget', prop: 'dppmTarget',
search: false, search: false,
sortable: true, sortable: "custom",
filter: true, filter: true,
span: 24, span: 24,
width: 120, width: 120,
@ -240,7 +241,7 @@ export default {
label: '实际值', label: '实际值',
prop: 'dppmReality', prop: 'dppmReality',
search: false, search: false,
sortable: true, sortable: "custom",
filter: true, filter: true,
span: 24, span: 24,
width: 120, width: 120,
@ -258,7 +259,7 @@ export default {
label: '目标值', label: '目标值',
prop: 'djcwTarget', prop: 'djcwTarget',
search: false, search: false,
sortable: true, sortable: "custom",
filter: true, filter: true,
span: 24, span: 24,
width: 120, width: 120,
@ -267,7 +268,7 @@ export default {
label: '实际值', label: '实际值',
prop: 'djcwReality', prop: 'djcwReality',
search: false, search: false,
sortable: true, sortable: "custom",
filter: true, filter: true,
span: 24, span: 24,
width: 120, width: 120,
@ -285,7 +286,7 @@ export default {
label: '目标值', label: '目标值',
prop: 'qualityTsTarget', prop: 'qualityTsTarget',
search: false, search: false,
sortable: true, sortable: "custom",
filter: true, filter: true,
span: 24, span: 24,
width: 120, width: 120,
@ -294,7 +295,7 @@ export default {
label: '实际值', label: '实际值',
prop: 'qualityTsReality', prop: 'qualityTsReality',
search: false, search: false,
sortable: true, sortable: "custom",
filter: true, filter: true,
span: 24, span: 24,
width: 120, width: 120,
@ -313,7 +314,7 @@ export default {
label: '目标值', label: '目标值',
prop: 'pcxTarget', prop: 'pcxTarget',
search: false, search: false,
sortable: true, sortable: "custom",
filter: true, filter: true,
span: 24, span: 24,
width: 120, width: 120,
@ -322,7 +323,7 @@ export default {
label: '实际值', label: '实际值',
prop: 'pcxReality', prop: 'pcxReality',
search: false, search: false,
sortable: true, sortable: "custom",
filter: true, filter: true,
span: 24, span: 24,
width: 120, width: 120,
@ -341,7 +342,7 @@ export default {
label: '目标值', label: '目标值',
prop: 'dywTarget', prop: 'dywTarget',
search: false, search: false,
sortable: true, sortable: "custom",
filter: true, filter: true,
span: 24, span: 24,
width: 120, width: 120,
@ -350,7 +351,7 @@ export default {
label: '实际值', label: '实际值',
prop: 'dywReality', prop: 'dywReality',
search: false, search: false,
sortable: true, sortable: "custom",
filter: true, filter: true,
span: 24, span: 24,
width: 120, width: 120,
@ -369,7 +370,7 @@ export default {
label: '目标值', label: '目标值',
prop: 'qlwtTarget', prop: 'qlwtTarget',
search: false, search: false,
sortable: true, sortable: "custom",
filter: true, filter: true,
span: 24, span: 24,
width: 120, width: 120,
@ -378,7 +379,7 @@ export default {
label: '实际值', label: '实际值',
prop: 'qlwtReality', prop: 'qlwtReality',
search: false, search: false,
sortable: true, sortable: "custom",
filter: true, filter: true,
span: 24, span: 24,
width: 120, width: 120,
@ -394,7 +395,7 @@ export default {
label: '状态', label: '状态',
prop: 'qualityStatus', prop: 'qualityStatus',
search: false, search: false,
sortable: true, sortable: "custom",
filter: true, filter: true,
span: 24, span: 24,
}, },
@ -412,7 +413,22 @@ export default {
isOpen: false isOpen: false
} }
}, },
computed: {
...mapGetters(["permission"]),
},
methods: { methods: {
//
sortChange({ prop, order }) {
console.log('prop----------', prop);
console.log('order----------', order);
this.query.ascs = undefined;
this.query.descs = undefined;
const orderByFieldKey = order === 'ascending' ? 'ascs' : 'descs';
const orderByField = prop.replace(/([a-z])([A-Z0-9])/g, '$1_$2').toUpperCase();
this.query[orderByFieldKey] = orderByField;
// //
this.onLoad(this.page, this.query);
},
calcData(a,b){ calcData(a,b){
// //
const fieldsToCheck = ['djcwReality','qualityTsReality','pcxReality', 'dywReality', 'qlwtReality','dppmTarget', const fieldsToCheck = ['djcwReality','qualityTsReality','pcxReality', 'dywReality', 'qlwtReality','dppmTarget',

@ -3,7 +3,7 @@
<avue-crud :option="option" :table-loading="loading" :data="data" v-model="form" v-model:page="page" ref="crud" <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" @row-del="rowDel" @search-change="searchChange" @search-reset="searchReset"
@selection-change="selectionChange" @current-change="currentChange" @size-change="sizeChange" @selection-change="selectionChange" @current-change="currentChange" @size-change="sizeChange"
@refresh-change="refreshChange" @on-load="onLoad"> @refresh-change="refreshChange" @on-load="onLoad" @sort-change="sortChange">
<template #menu-left> <template #menu-left>
<el-button type="primary" @click="updateData()">重新计算</el-button> <el-button type="primary" @click="updateData()">重新计算</el-button>
<el-button type="primary" @click="submitData()">保存</el-button> <el-button type="primary" @click="submitData()">保存</el-button>
@ -263,7 +263,7 @@ export default {
{ {
label: '工艺能力', label: '工艺能力',
prop: 'caName', prop: 'caName',
sortable: true, sortable: "custom",
filter: true, filter: true,
span: 24, span: 24,
search: false, search: false,
@ -273,7 +273,7 @@ export default {
label: '厂家代码', label: '厂家代码',
prop: 'oemCode', prop: 'oemCode',
search: false, search: false,
sortable: true, sortable: "custom",
filter: true, filter: true,
span: 24, span: 24,
width: 120, width: 120,
@ -282,7 +282,7 @@ export default {
label: '厂家名称', label: '厂家名称',
prop: 'oemName', prop: 'oemName',
search: false, search: false,
sortable: true, sortable: "custom",
filter: true, filter: true,
span: 24, span: 24,
width: 120, width: 120,
@ -296,7 +296,7 @@ export default {
label: '目标值(%)', label: '目标值(%)',
prop: 'jhzsTarget', prop: 'jhzsTarget',
search: false, search: false,
sortable: true, sortable: "custom",
filter: true, filter: true,
span: 24, span: 24,
width: 120, width: 120,
@ -305,7 +305,7 @@ export default {
label: '实际值(%)', label: '实际值(%)',
prop: 'jhzsReality', prop: 'jhzsReality',
search: false, search: false,
sortable: true, sortable: "custom",
filter: true, filter: true,
span: 24, span: 24,
width: 120, width: 120,
@ -318,7 +318,7 @@ export default {
label: '绩效得分', label: '绩效得分',
prop: 'jhzsNum', prop: 'jhzsNum',
search: false, search: false,
sortable: true, sortable: "custom",
filter: true, filter: true,
span: 24, span: 24,
width: 120, width: 120,
@ -332,7 +332,7 @@ export default {
label: '目标值(%)', label: '目标值(%)',
prop: 'zdljTarget', prop: 'zdljTarget',
search: false, search: false,
sortable: true, sortable: "custom",
filter: true, filter: true,
span: 24, span: 24,
width: 120, width: 120,
@ -341,7 +341,7 @@ export default {
label: '实际值(%)', label: '实际值(%)',
prop: 'zdljReality', prop: 'zdljReality',
search: false, search: false,
sortable: true, sortable: "custom",
filter: true, filter: true,
span: 24, span: 24,
width: 120, width: 120,
@ -354,7 +354,7 @@ export default {
label: '绩效得分', label: '绩效得分',
prop: 'zdljNum', prop: 'zdljNum',
search: false, search: false,
sortable: true, sortable: "custom",
filter: true, filter: true,
span: 24, span: 24,
width: 120, width: 120,
@ -368,7 +368,7 @@ export default {
label: '目标值', label: '目标值',
prop: 'qqxTarget', prop: 'qqxTarget',
search: false, search: false,
sortable: true, sortable: "custom",
filter: true, filter: true,
span: 24, span: 24,
width: 120, width: 120,
@ -377,7 +377,7 @@ export default {
label: '实际值', label: '实际值',
prop: 'qqxReality', prop: 'qqxReality',
search: false, search: false,
sortable: true, sortable: "custom",
filter: true, filter: true,
span: 24, span: 24,
width: 120, width: 120,
@ -390,7 +390,7 @@ export default {
label: '绩效得分', label: '绩效得分',
prop: 'qqxNum', prop: 'qqxNum',
search: false, search: false,
sortable: true, sortable: "custom",
filter: true, filter: true,
span: 24, span: 24,
width: 120, width: 120,
@ -404,7 +404,7 @@ export default {
label: '目标值', label: '目标值',
prop: 'produceTsTarget', prop: 'produceTsTarget',
search: false, search: false,
sortable: true, sortable: "custom",
filter: true, filter: true,
span: 24, span: 24,
width: 120, width: 120,
@ -413,7 +413,7 @@ export default {
label: '实际值', label: '实际值',
prop: 'produceTsReality', prop: 'produceTsReality',
search: false, search: false,
sortable: true, sortable: "custom",
filter: true, filter: true,
span: 24, span: 24,
width: 120, width: 120,
@ -426,7 +426,7 @@ export default {
label: '绩效得分', label: '绩效得分',
prop: 'produceTsNum', prop: 'produceTsNum',
search: false, search: false,
sortable: true, sortable: "custom",
filter: true, filter: true,
span: 24, span: 24,
width: 120, width: 120,
@ -437,7 +437,7 @@ export default {
label: '交付绩效', label: '交付绩效',
prop: 'payMerits', prop: 'payMerits',
search: false, search: false,
sortable: true, sortable: "custom",
filter: true, filter: true,
span: 24, span: 24,
width: 120, width: 120,
@ -449,7 +449,7 @@ export default {
label: '目标值', label: '目标值',
prop: 'hgxTarget', prop: 'hgxTarget',
search: false, search: false,
sortable: true, sortable: "custom",
filter: true, filter: true,
span: 24, span: 24,
width: 120, width: 120,
@ -462,7 +462,7 @@ export default {
label: '实际值', label: '实际值',
prop: 'hgxReality', prop: 'hgxReality',
search: false, search: false,
sortable: true, sortable: "custom",
filter: true, filter: true,
span: 24, span: 24,
width: 120, width: 120,
@ -475,7 +475,7 @@ export default {
label: '绩效得分', label: '绩效得分',
prop: 'hgxNum', prop: 'hgxNum',
search: false, search: false,
sortable: true, sortable: "custom",
filter: true, filter: true,
span: 24, span: 24,
width: 120, width: 120,
@ -489,7 +489,7 @@ export default {
label: '目标值', label: '目标值',
prop: 'dppmTarget', prop: 'dppmTarget',
search: false, search: false,
sortable: true, sortable: "custom",
filter: true, filter: true,
span: 24, span: 24,
width: 120, width: 120,
@ -502,7 +502,7 @@ export default {
label: '实际值', label: '实际值',
prop: 'dppmReality', prop: 'dppmReality',
search: false, search: false,
sortable: true, sortable: "custom",
filter: true, filter: true,
span: 24, span: 24,
width: 120, width: 120,
@ -515,7 +515,7 @@ export default {
label: '绩效得分', label: '绩效得分',
prop: 'dppmNum', prop: 'dppmNum',
search: false, search: false,
sortable: true, sortable: "custom",
filter: true, filter: true,
span: 24, span: 24,
width: 120, width: 120,
@ -529,7 +529,7 @@ export default {
label: '目标值', label: '目标值',
prop: 'djcwTarget', prop: 'djcwTarget',
search: false, search: false,
sortable: true, sortable: "custom",
filter: true, filter: true,
span: 24, span: 24,
width: 120, width: 120,
@ -538,7 +538,7 @@ export default {
label: '实际值', label: '实际值',
prop: 'djcwReality', prop: 'djcwReality',
search: false, search: false,
sortable: true, sortable: "custom",
filter: true, filter: true,
span: 24, span: 24,
width: 120, width: 120,
@ -551,7 +551,7 @@ export default {
label: '绩效得分', label: '绩效得分',
prop: 'djcwNum', prop: 'djcwNum',
search: false, search: false,
sortable: true, sortable: "custom",
filter: true, filter: true,
span: 24, span: 24,
width: 120, width: 120,
@ -565,7 +565,7 @@ export default {
label: '目标值', label: '目标值',
prop: 'qualityTsTarget', prop: 'qualityTsTarget',
search: false, search: false,
sortable: true, sortable: "custom",
filter: true, filter: true,
span: 24, span: 24,
width: 120, width: 120,
@ -574,7 +574,7 @@ export default {
label: '实际值', label: '实际值',
prop: 'qualityTsReality', prop: 'qualityTsReality',
search: false, search: false,
sortable: true, sortable: "custom",
filter: true, filter: true,
span: 24, span: 24,
width: 120, width: 120,
@ -587,7 +587,7 @@ export default {
label: '绩效得分', label: '绩效得分',
prop: 'qualityTsNum', prop: 'qualityTsNum',
search: false, search: false,
sortable: true, sortable: "custom",
filter: true, filter: true,
span: 24, span: 24,
width: 120, width: 120,
@ -601,7 +601,7 @@ export default {
label: '目标值', label: '目标值',
prop: 'pcxTarget', prop: 'pcxTarget',
search: false, search: false,
sortable: true, sortable: "custom",
filter: true, filter: true,
span: 24, span: 24,
width: 120, width: 120,
@ -610,7 +610,7 @@ export default {
label: '实际值', label: '实际值',
prop: 'pcxReality', prop: 'pcxReality',
search: false, search: false,
sortable: true, sortable: "custom",
filter: true, filter: true,
span: 24, span: 24,
width: 120, width: 120,
@ -623,7 +623,7 @@ export default {
label: '绩效得分', label: '绩效得分',
prop: 'pcxNum', prop: 'pcxNum',
search: false, search: false,
sortable: true, sortable: "custom",
filter: true, filter: true,
span: 24, span: 24,
width: 120, width: 120,
@ -637,7 +637,7 @@ export default {
label: '目标值', label: '目标值',
prop: 'dywTarget', prop: 'dywTarget',
search: false, search: false,
sortable: true, sortable: "custom",
filter: true, filter: true,
span: 24, span: 24,
width: 120, width: 120,
@ -646,7 +646,7 @@ export default {
label: '实际值', label: '实际值',
prop: 'dywReality', prop: 'dywReality',
search: false, search: false,
sortable: true, sortable: "custom",
filter: true, filter: true,
span: 24, span: 24,
width: 120, width: 120,
@ -659,7 +659,7 @@ export default {
label: '绩效得分', label: '绩效得分',
prop: 'dywNum', prop: 'dywNum',
search: false, search: false,
sortable: true, sortable: "custom",
filter: true, filter: true,
span: 24, span: 24,
width: 120, width: 120,
@ -673,7 +673,7 @@ export default {
label: '目标值', label: '目标值',
prop: 'qlwtTarget', prop: 'qlwtTarget',
search: false, search: false,
sortable: true, sortable: "custom",
filter: true, filter: true,
span: 24, span: 24,
width: 120, width: 120,
@ -682,7 +682,7 @@ export default {
label: '实际值', label: '实际值',
prop: 'qlwtReality', prop: 'qlwtReality',
search: false, search: false,
sortable: true, sortable: "custom",
filter: true, filter: true,
span: 24, span: 24,
width: 120, width: 120,
@ -695,7 +695,7 @@ export default {
label: '绩效得分', label: '绩效得分',
prop: 'qlwtNum', prop: 'qlwtNum',
search: false, search: false,
sortable: true, sortable: "custom",
filter: true, filter: true,
span: 24, span: 24,
width: 120, width: 120,
@ -706,7 +706,7 @@ export default {
label: '质量绩效', label: '质量绩效',
prop: 'qualityMerits', prop: 'qualityMerits',
search: false, search: false,
sortable: true, sortable: "custom",
filter: true, filter: true,
span: 24, span: 24,
width: 120, width: 120,
@ -718,7 +718,7 @@ export default {
label: '加分', label: '加分',
prop: 'growAbility', prop: 'growAbility',
search: false, search: false,
sortable: true, sortable: "custom",
filter: true, filter: true,
span: 24, span: 24,
width: 120, width: 120,
@ -736,7 +736,7 @@ export default {
label: '加分', label: '加分',
prop: 'ajorIssues', prop: 'ajorIssues',
search: false, search: false,
sortable: true, sortable: "custom",
filter: true, filter: true,
span: 24, span: 24,
width: 120, width: 120,
@ -751,7 +751,7 @@ export default {
label: '最终得分', label: '最终得分',
prop: 'endScore', prop: 'endScore',
search: false, search: false,
sortable: true, sortable: "custom",
filter: true, filter: true,
span: 24, span: 24,
width: 120, width: 120,
@ -760,7 +760,7 @@ export default {
label: '绩效等级', label: '绩效等级',
prop: 'meritsScore', prop: 'meritsScore',
search: false, search: false,
sortable: true, sortable: "custom",
filter: true, filter: true,
span: 24, span: 24,
width: 120, width: 120,
@ -769,7 +769,7 @@ export default {
label: '排名', label: '排名',
prop: 'ranking', prop: 'ranking',
search: false, search: false,
sortable: true, sortable: "custom",
filter: true, filter: true,
span: 24, span: 24,
}, },
@ -788,6 +788,18 @@ export default {
} }
}, },
methods: { methods: {
//
sortChange({ prop, order }) {
console.log('prop----------', prop);
console.log('order----------', order);
this.query.ascs = undefined;
this.query.descs = undefined;
const orderByFieldKey = order === 'ascending' ? 'ascs' : 'descs';
const orderByField = prop.replace(/([a-z])([A-Z0-9])/g, '$1_$2').toUpperCase();
this.query[orderByFieldKey] = orderByField;
// //
this.onLoad(this.page, this.query);
},
calcData(a,b){ calcData(a,b){
// //
const fieldsToCheck = [ const fieldsToCheck = [

Loading…
Cancel
Save