|
|
|
|
@ -6,10 +6,12 @@ |
|
|
|
|
@refresh-change="refreshChange" @on-load="onLoad"> |
|
|
|
|
<template #menu-left> |
|
|
|
|
<el-form ref="form" :model="form" label-width="100px" :inline="true"> |
|
|
|
|
|
|
|
|
|
<el-form-item label="现执行价格:"> |
|
|
|
|
<el-input v-model="form.price"></el-input> |
|
|
|
|
</el-form-item> |
|
|
|
|
<el-form-item> |
|
|
|
|
<el-button type="primary" @click="settlementFn('pre')">预结算</el-button> |
|
|
|
|
<el-button type="primary" @click="settlementFn('settle')">结算</el-button> |
|
|
|
|
<el-button type="primary" @click="settlementFn">预结算</el-button> |
|
|
|
|
<el-button type="primary" @click="settlementFnNum">结算</el-button> |
|
|
|
|
<el-button type="danger" @click="onSubmit">无需结算</el-button> |
|
|
|
|
</el-form-item> |
|
|
|
|
</el-form> |
|
|
|
|
@ -22,12 +24,12 @@ |
|
|
|
|
</template> |
|
|
|
|
|
|
|
|
|
</avue-crud> |
|
|
|
|
<settlementDailog v-if="isOpen" :showDialog="isOpen" :type="settlementType" :statementList="selectionList" @closeDialog="closeDialog" @refresh="refreshTable"></settlementDailog> |
|
|
|
|
<settlementDailog v-if="isOpen" :showDialog="isOpen" :type="settlementType" :statementList="selectionList" :settleResult="settleResult" @closeDialog="closeDialog" @refresh="refreshTable"></settlementDailog> |
|
|
|
|
</div> |
|
|
|
|
</template> |
|
|
|
|
<script> |
|
|
|
|
import settlementDailog from './SettlementDailog.vue' |
|
|
|
|
import {getStatement,noSettlementItem} from "@/api/outsourcingManagement/oemOrderSettlement" |
|
|
|
|
import {getStatement,noSettlementItem,oemSettleAccountsItem,preSettlementItem} from "@/api/outsourcingManagement/oemOrderSettlement" |
|
|
|
|
export default { |
|
|
|
|
components: { |
|
|
|
|
settlementDailog |
|
|
|
|
@ -161,22 +163,12 @@ export default { |
|
|
|
|
search: true, |
|
|
|
|
width: 120, |
|
|
|
|
type:'select', |
|
|
|
|
dicUrl:"/api/blade-desk/bsProcessSet/getProcessSetList", |
|
|
|
|
dicUrl:"/api/blade-desk/mesOemProcess/page?current=1&&size=99999", |
|
|
|
|
props:{ |
|
|
|
|
label: 'name', |
|
|
|
|
value: 'code', |
|
|
|
|
// res: 'data.records', |
|
|
|
|
label: 'paName', |
|
|
|
|
value: 'oemProcessCode', |
|
|
|
|
res: 'data.records', |
|
|
|
|
}, |
|
|
|
|
// dicData:[ |
|
|
|
|
// { |
|
|
|
|
// label:'工序1', |
|
|
|
|
// value:1 |
|
|
|
|
// }, |
|
|
|
|
// { |
|
|
|
|
// label:'工序2', |
|
|
|
|
// value:2 |
|
|
|
|
// }, |
|
|
|
|
// ] |
|
|
|
|
|
|
|
|
|
}, |
|
|
|
|
{ |
|
|
|
|
@ -326,17 +318,103 @@ export default { |
|
|
|
|
total: 0, |
|
|
|
|
}, |
|
|
|
|
isOpen: false, |
|
|
|
|
settlementType: 'settle', |
|
|
|
|
settleResult: null, |
|
|
|
|
|
|
|
|
|
} |
|
|
|
|
}, |
|
|
|
|
methods: { |
|
|
|
|
settlementFn(type) { |
|
|
|
|
searchChange(params, done) { |
|
|
|
|
this.query = params; |
|
|
|
|
this.page.currentPage = 1; |
|
|
|
|
this.onLoad(); |
|
|
|
|
done && done(); |
|
|
|
|
}, |
|
|
|
|
searchReset() { |
|
|
|
|
this.query = {}; |
|
|
|
|
this.page.currentPage = 1; |
|
|
|
|
this.onLoad(); |
|
|
|
|
}, |
|
|
|
|
currentChange(currentPage) { |
|
|
|
|
this.page.currentPage = currentPage; |
|
|
|
|
this.onLoad(); |
|
|
|
|
}, |
|
|
|
|
sizeChange(pageSize) { |
|
|
|
|
this.page.pageSize = pageSize; |
|
|
|
|
this.onLoad(); |
|
|
|
|
}, |
|
|
|
|
refreshChange() { |
|
|
|
|
this.onLoad(); |
|
|
|
|
}, |
|
|
|
|
//结算 |
|
|
|
|
settlementFnNum() { |
|
|
|
|
if (this.selectionList.length === 0) { |
|
|
|
|
this.$message.warning('请选择至少一条数据'); |
|
|
|
|
this.$message.error('请选择至少一条数据'); |
|
|
|
|
return; |
|
|
|
|
} |
|
|
|
|
if (!this.form.price) { |
|
|
|
|
this.$message.error('请输入现执行价格'); |
|
|
|
|
return; |
|
|
|
|
} |
|
|
|
|
this.settlementType = type; |
|
|
|
|
|
|
|
|
|
this.$confirm('确定要进行结算吗?', { |
|
|
|
|
confirmButtonText: '确定', |
|
|
|
|
cancelButtonText: '取消', |
|
|
|
|
type: 'error', |
|
|
|
|
}).then(() => { |
|
|
|
|
// 调用结算接口 |
|
|
|
|
const params = { |
|
|
|
|
statementList: this.selectionList, |
|
|
|
|
price: this.form.price |
|
|
|
|
}; |
|
|
|
|
|
|
|
|
|
oemSettleAccountsItem(params).then(res => { |
|
|
|
|
// 获取返回的数据 |
|
|
|
|
if (res.data && res.data.data) { |
|
|
|
|
this.settleResult = res.data.data; |
|
|
|
|
// 打开settlementDailog并显示结果 |
|
|
|
|
this.isOpen = true; |
|
|
|
|
} else { |
|
|
|
|
this.$message.success('结算成功'); |
|
|
|
|
this.onLoad(); |
|
|
|
|
} |
|
|
|
|
}).catch(() => { |
|
|
|
|
this.$message.error('结算失败'); |
|
|
|
|
}); |
|
|
|
|
}).catch(() => { |
|
|
|
|
// 用户点击取消 |
|
|
|
|
}); |
|
|
|
|
}, |
|
|
|
|
//预结算 |
|
|
|
|
settlementFn() { |
|
|
|
|
if (this.selectionList.length === 0) { |
|
|
|
|
this.$message.error('请选择至少一条数据'); |
|
|
|
|
return; |
|
|
|
|
} |
|
|
|
|
if (!this.form.price) { |
|
|
|
|
this.$message.error('请输入现执行价格'); |
|
|
|
|
return; |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
this.$confirm('确定要进行预结算吗?', { |
|
|
|
|
confirmButtonText: '确定', |
|
|
|
|
cancelButtonText: '取消', |
|
|
|
|
type: 'error', |
|
|
|
|
}).then(() => { |
|
|
|
|
// 调用预结算接口 |
|
|
|
|
const params = { |
|
|
|
|
statementList: this.selectionList, |
|
|
|
|
price: this.form.price |
|
|
|
|
}; |
|
|
|
|
|
|
|
|
|
preSettlementItem(params).then(() => { |
|
|
|
|
this.$message.success('预结算成功'); |
|
|
|
|
this.onLoad(); |
|
|
|
|
}).catch(() => { |
|
|
|
|
this.$message.error('预结算失败'); |
|
|
|
|
}); |
|
|
|
|
}).catch(() => { |
|
|
|
|
// 用户点击取消 |
|
|
|
|
}); |
|
|
|
|
}, |
|
|
|
|
closeDialog() { |
|
|
|
|
this.isOpen = false; |
|
|
|
|
|