|
|
|
@ -5,6 +5,7 @@ import { |
|
|
|
queryQuoteDetailRoutingAlternative, changeQuoteDetailRoutingChange, |
|
|
|
queryQuoteDetailRoutingVersion |
|
|
|
} from "@/api/quote/quoteDetailRouting"; |
|
|
|
import {updateQuoteDetailRouting} from "../../../../../api/quote/quoteDetailRouting"; |
|
|
|
|
|
|
|
export default { |
|
|
|
name: "quoteDetailRouting", |
|
|
|
@ -498,7 +499,25 @@ export default { |
|
|
|
alternativeList:[], |
|
|
|
routing:{ |
|
|
|
|
|
|
|
} |
|
|
|
}, |
|
|
|
|
|
|
|
quoteDetailRouting:{ |
|
|
|
|
|
|
|
}, |
|
|
|
quoteDetailRoutingVisible:false, |
|
|
|
|
|
|
|
rules:{ |
|
|
|
workCenterCost:[ |
|
|
|
{ required: true, message: '请输入加工中心成本', trigger: ['blur','change'] }, |
|
|
|
], |
|
|
|
setupLaborClassCost:[ |
|
|
|
{ required: true, message: '请输入人工成本-调机', trigger: ['blur','change'] }, |
|
|
|
], |
|
|
|
laborClassCost:[ |
|
|
|
{ required: true, message: '请输入人工成本-生产', trigger: ['blur','change'] }, |
|
|
|
], |
|
|
|
}, |
|
|
|
|
|
|
|
} |
|
|
|
}, |
|
|
|
methods:{ |
|
|
|
@ -550,26 +569,18 @@ export default { |
|
|
|
}, |
|
|
|
handleChangeVersion(){ |
|
|
|
let node = this.$refs.tree.getCurrentNode(); |
|
|
|
let row = { |
|
|
|
routingRevision:null, |
|
|
|
alternativeNo: '', |
|
|
|
routingType: null, |
|
|
|
} |
|
|
|
if (this.treeData.length === 0){ |
|
|
|
this.$message.warning("未维护BOM结构") |
|
|
|
return; |
|
|
|
} |
|
|
|
if (this.dataList.length > 0){ |
|
|
|
row = this.dataList[0]; |
|
|
|
} |
|
|
|
if (node){ |
|
|
|
this.routing = { |
|
|
|
partNo: node.partNo, |
|
|
|
buNo: node.buNo, |
|
|
|
site: node.site, |
|
|
|
routingType: row.routingType, |
|
|
|
routingRevision: row.routingRevision, |
|
|
|
alternativeNo: row.alternativeNo, |
|
|
|
routingType: node.bomType, |
|
|
|
routingRevision: node.engChgLevel, |
|
|
|
alternativeNo: node.alternativeNo, |
|
|
|
} |
|
|
|
} |
|
|
|
this.handleQueryVersionList(); |
|
|
|
@ -588,9 +599,7 @@ export default { |
|
|
|
queryQuoteDetailRoutingVersion(params).then(({data})=>{ |
|
|
|
if (data && data.code === 0){ |
|
|
|
this.versionList = data.rows; |
|
|
|
if (this.versionList.length > 0){ |
|
|
|
this.handleQueryAlternativeList(); |
|
|
|
} |
|
|
|
this.handleQueryAlternativeList(); |
|
|
|
}else { |
|
|
|
this.$message.warning(data.msg); |
|
|
|
} |
|
|
|
@ -619,7 +628,7 @@ export default { |
|
|
|
}, |
|
|
|
alternativeRowStyle({row}){ |
|
|
|
if (this.dataList.length > 0){ |
|
|
|
if (this.dataList[0].alternativeNo === row.alternativeNo && this.dataList[0].routingRevision === row.routingRevision && this.dataList[0].routingType === row.routingType){ |
|
|
|
if (this.routing.alternativeNo === row.alternativeNo && this.routing.routingRevision === row.routingRevision && this.routing.routingType === row.routingType){ |
|
|
|
return { 'background-color': '#E8F7F6' }; |
|
|
|
} |
|
|
|
} |
|
|
|
@ -670,6 +679,39 @@ export default { |
|
|
|
} |
|
|
|
this.$router.push(params) |
|
|
|
} |
|
|
|
}, |
|
|
|
handleUpdateQuoteDetailRouting(row){ |
|
|
|
this.quoteDetailRouting = {...row} |
|
|
|
this.quoteDetailRoutingVisible = true; |
|
|
|
}, |
|
|
|
saveQuoteDetailRouting(){ |
|
|
|
this.$refs.quoteDetailRoutingForm.validate((valid,obj) => { |
|
|
|
if (valid){ |
|
|
|
let params = { |
|
|
|
...this.quoteDetailRouting, |
|
|
|
} |
|
|
|
updateQuoteDetailRouting(params).then(({data})=>{ |
|
|
|
if (data && data.code === 0){ |
|
|
|
this.$message.success(data.msg); |
|
|
|
this.handleQueryDetailRouting(); |
|
|
|
this.quoteDetailRoutingVisible = false; |
|
|
|
}else { |
|
|
|
this.$message.warning(data.msg); |
|
|
|
} |
|
|
|
}).catch((error)=>{ |
|
|
|
this.$message.error(error); |
|
|
|
}) |
|
|
|
}else { |
|
|
|
let i = 1; |
|
|
|
for (let item in obj){ |
|
|
|
this.$message.error(obj[item][0].message); |
|
|
|
if (i === 1){ |
|
|
|
return |
|
|
|
} |
|
|
|
i++; |
|
|
|
} |
|
|
|
} |
|
|
|
}) |
|
|
|
} |
|
|
|
}, |
|
|
|
created() { |
|
|
|
@ -709,6 +751,11 @@ export default { |
|
|
|
</el-aside> |
|
|
|
<el-main style="padding: 0"> |
|
|
|
<el-table :data="dataList" v-loading="queryLoading" border style="width: 100%" :height="420"> |
|
|
|
<el-table-column label="操作" fixed="left" align="center" width="80px"> |
|
|
|
<template slot-scope="scope"> |
|
|
|
<a @click="handleUpdateQuoteDetailRouting(scope.row)">编辑</a> |
|
|
|
</template> |
|
|
|
</el-table-column> |
|
|
|
<el-table-column |
|
|
|
v-for="(item,index) in columns" :key="index" |
|
|
|
:sortable="item.columnSortable" |
|
|
|
@ -754,6 +801,58 @@ export default { |
|
|
|
</el-table-column> |
|
|
|
</el-table> |
|
|
|
</el-dialog> |
|
|
|
|
|
|
|
|
|
|
|
<el-dialog title="工序金额信息" top="23vh" v-drag :visible.sync="quoteDetailRoutingVisible" width="500px" append-to-body :close-on-click-modal="false"> |
|
|
|
<el-form label-position="top" ref="quoteDetailRoutingForm" :model="quoteDetailRouting" :rules="rules" label-width="100px"> |
|
|
|
<el-row :gutter="10"> |
|
|
|
<el-col :span="12"> |
|
|
|
<el-form-item label="物料编码"> |
|
|
|
<el-input v-model="quoteDetailRouting.partNo" disabled></el-input> |
|
|
|
</el-form-item> |
|
|
|
</el-col> |
|
|
|
<el-col :span="12"> |
|
|
|
<el-form-item label="物料描述"> |
|
|
|
<el-input v-model="quoteDetailRouting.partDesc" disabled></el-input> |
|
|
|
</el-form-item> |
|
|
|
</el-col> |
|
|
|
<el-col :span="4"> |
|
|
|
<el-form-item label="工序编码"> |
|
|
|
<el-input v-model="quoteDetailRouting.operationNo" disabled></el-input> |
|
|
|
</el-form-item> |
|
|
|
</el-col> |
|
|
|
<el-col :span="8"> |
|
|
|
<el-form-item label="工序名称"> |
|
|
|
<el-input v-model="quoteDetailRouting.operationName" disabled></el-input> |
|
|
|
</el-form-item> |
|
|
|
</el-col> |
|
|
|
<el-col :span="12"> |
|
|
|
<el-form-item label=" "></el-form-item> |
|
|
|
</el-col> |
|
|
|
<el-col :span="12"> |
|
|
|
<el-form-item label="单位机器成本" prop="workCenterCost" :show-message="false"> |
|
|
|
<el-input-number :min="0" :controls="false" :step="0" v-model="quoteDetailRouting.workCenterCost"></el-input-number> |
|
|
|
</el-form-item> |
|
|
|
</el-col> |
|
|
|
</el-row> |
|
|
|
<el-row :gutter="10"> |
|
|
|
<el-col :span="12"> |
|
|
|
<el-form-item label="单位人工成本-调机" prop="setupLaborClassCost" :show-message="false"> |
|
|
|
<el-input-number :min="0" :controls="false" :step="0" v-model="quoteDetailRouting.setupLaborClassCost"></el-input-number> |
|
|
|
</el-form-item> |
|
|
|
</el-col> |
|
|
|
<el-col :span="12"> |
|
|
|
<el-form-item label="单位人工成本-生产" prop="laborClassCost" :show-message="false"> |
|
|
|
<el-input-number :min="0" :controls="false" :step="0" v-model="quoteDetailRouting.laborClassCost"></el-input-number> |
|
|
|
</el-form-item> |
|
|
|
</el-col> |
|
|
|
</el-row> |
|
|
|
</el-form> |
|
|
|
<el-footer style="text-align: center;line-height: 1.5;height: 30px"> |
|
|
|
<el-button type="primary" @click="saveQuoteDetailRouting">确 定</el-button> |
|
|
|
<el-button type="primary" @click="quoteDetailRoutingVisible = false">取 消</el-button> |
|
|
|
</el-footer> |
|
|
|
</el-dialog> |
|
|
|
</div> |
|
|
|
</template> |
|
|
|
|
|
|
|
|