|
|
@ -69,6 +69,7 @@ export default { |
|
|
let params = { |
|
|
let params = { |
|
|
quoteDetailId: this.quoteDetail.id |
|
|
quoteDetailId: this.quoteDetail.id |
|
|
} |
|
|
} |
|
|
|
|
|
this.dataList = []; |
|
|
this.queryLoading = true |
|
|
this.queryLoading = true |
|
|
queryQuoteDetailTool(params).then(({data})=>{ |
|
|
queryQuoteDetailTool(params).then(({data})=>{ |
|
|
if (data && data.code === 0){ |
|
|
if (data && data.code === 0){ |
|
|
@ -84,7 +85,9 @@ export default { |
|
|
}, |
|
|
}, |
|
|
handleSave(row){ |
|
|
handleSave(row){ |
|
|
if (row){ |
|
|
if (row){ |
|
|
this.saveTool = {...row}; |
|
|
|
|
|
|
|
|
this.saveTool = { |
|
|
|
|
|
...row |
|
|
|
|
|
}; |
|
|
}else { |
|
|
}else { |
|
|
this.saveTool = {...this.tool}; |
|
|
this.saveTool = {...this.tool}; |
|
|
} |
|
|
} |
|
|
@ -112,12 +115,15 @@ export default { |
|
|
}).catch(() => {}); |
|
|
}).catch(() => {}); |
|
|
}, |
|
|
}, |
|
|
computedQuoteUnitCost(){ |
|
|
computedQuoteUnitCost(){ |
|
|
let quoteUnitCost = this.saveTool.unitCost * this.saveTool.toolQty; |
|
|
|
|
|
if (isNaN(quoteUnitCost)){ |
|
|
|
|
|
|
|
|
if (this.saveTool.toolNo === '*'){ |
|
|
|
|
|
return; |
|
|
|
|
|
} |
|
|
|
|
|
// 分摊成本 = 单片模具费 / (1-Mark up%)/分摊数量 |
|
|
|
|
|
if ((1-this.saveTool.expectedServiceLife/100) === 0){ |
|
|
this.saveTool.quoteUnitCost = 0; |
|
|
this.saveTool.quoteUnitCost = 0; |
|
|
return |
|
|
|
|
|
|
|
|
return; |
|
|
} |
|
|
} |
|
|
this.saveTool.quoteUnitCost = quoteUnitCost/this.saveTool.expectedServiceLife; |
|
|
|
|
|
|
|
|
this.saveTool.quoteUnitCost = this.saveTool.unitCost / (1-this.saveTool.expectedServiceLife/100) / this.saveTool.toolQty; |
|
|
}, |
|
|
}, |
|
|
handleQueryToolList(flag){ |
|
|
handleQueryToolList(flag){ |
|
|
let params = { |
|
|
let params = { |
|
|
@ -141,7 +147,7 @@ export default { |
|
|
}) |
|
|
}) |
|
|
}, |
|
|
}, |
|
|
handleToolDblClick(row){ |
|
|
handleToolDblClick(row){ |
|
|
this.saveTool.toolNo = row.toolNo; |
|
|
|
|
|
|
|
|
// this.saveTool.toolNo = row.toolNo; |
|
|
this.saveTool.toolDesc = row.toolDesc; |
|
|
this.saveTool.toolDesc = row.toolDesc; |
|
|
this.saveTool.unitCost = row.unitCost; |
|
|
this.saveTool.unitCost = row.unitCost; |
|
|
this.toolVisible = false |
|
|
this.toolVisible = false |
|
|
@ -241,9 +247,13 @@ export default { |
|
|
}, |
|
|
}, |
|
|
'toolVisible'(newVal,oldVal){ |
|
|
'toolVisible'(newVal,oldVal){ |
|
|
if (newVal){ |
|
|
if (newVal){ |
|
|
|
|
|
let toolDesc = this.saveTool.toolDesc; |
|
|
|
|
|
if (this.saveTool.toolNo === '*' && this.saveTool.toolNo === '#'){ |
|
|
|
|
|
toolDesc = ''; |
|
|
|
|
|
} |
|
|
this.queryTool={ |
|
|
this.queryTool={ |
|
|
toolNo: this.saveTool.toolNo, |
|
|
|
|
|
toolDesc: "", |
|
|
|
|
|
|
|
|
toolNo: '', |
|
|
|
|
|
toolDesc: toolDesc, |
|
|
} |
|
|
} |
|
|
this.handleQueryToolList(); |
|
|
this.handleQueryToolList(); |
|
|
} |
|
|
} |
|
|
@ -256,57 +266,56 @@ export default { |
|
|
<div> |
|
|
<div> |
|
|
<el-button type="primary" @click="handleSave(null)" :disabled="quoteDetail.status === '下达'">新增</el-button> |
|
|
<el-button type="primary" @click="handleSave(null)" :disabled="quoteDetail.status === '下达'">新增</el-button> |
|
|
<el-table :data="dataList" v-loading="queryLoading" :height="420" border style="width: 100%;margin-top: 5px" > |
|
|
<el-table :data="dataList" v-loading="queryLoading" :height="420" border style="width: 100%;margin-top: 5px" > |
|
|
<el-table-column label="工具编码" align="left" header-align="center" width="120" prop="toolNo"></el-table-column> |
|
|
|
|
|
<el-table-column label="工具描述" align="left" header-align="center" width="180" prop="toolDesc"></el-table-column> |
|
|
<el-table-column label="工具描述" align="left" header-align="center" width="180" prop="toolDesc"></el-table-column> |
|
|
<el-table-column label="工具数量" align="right" header-align="center" width="100" prop="toolQty"></el-table-column> |
|
|
|
|
|
<el-table-column label="单位成本" align="right" header-align="center" prop="unitCost"></el-table-column> |
|
|
|
|
|
<el-table-column label="预计使用寿命" align="right" header-align="center" prop="expectedServiceLife"></el-table-column> |
|
|
|
|
|
<el-table-column label="单位报价成本" align="right" header-align="center" prop="quoteUnitCost"></el-table-column> |
|
|
|
|
|
|
|
|
<el-table-column label="模具费金额" align="right" header-align="center" prop="unitCost"></el-table-column> |
|
|
|
|
|
<el-table-column label="Mark up%" align="right" header-align="center" prop="expectedServiceLife"></el-table-column> |
|
|
|
|
|
<el-table-column label="分摊数量" align="right" header-align="center" width="120" prop="toolQty"></el-table-column> |
|
|
|
|
|
<el-table-column label="单片分摊成本" align="right" header-align="center" prop="quoteUnitCost"></el-table-column> |
|
|
<el-table-column label="备注" align="left" header-align="center" prop="remark"></el-table-column> |
|
|
<el-table-column label="备注" align="left" header-align="center" prop="remark"></el-table-column> |
|
|
<el-table-column label="操作" align="center"> |
|
|
|
|
|
<template slot-scope="scope"> |
|
|
|
|
|
|
|
|
<el-table-column label="操作" align="center" v-if="quoteDetail.status === '草稿'"> |
|
|
|
|
|
<template slot-scope="scope" > |
|
|
<a @click="handleSave(scope.row)">编辑</a> |
|
|
<a @click="handleSave(scope.row)">编辑</a> |
|
|
<a @click="handleRemove(scope.row)">删除</a> |
|
|
|
|
|
|
|
|
<a v-if="scope.row.toolNo !== '*'" @click="handleRemove(scope.row)">删除</a> |
|
|
</template> |
|
|
</template> |
|
|
</el-table-column> |
|
|
</el-table-column> |
|
|
</el-table> |
|
|
</el-table> |
|
|
|
|
|
|
|
|
<el-dialog title="工具信息" :visible.sync="saveVisible" v-drag width="600px" append-to-body :close-on-click-modal="false"> |
|
|
|
|
|
|
|
|
<el-dialog title="工具信息" :visible.sync="saveVisible" v-drag width="450px" append-to-body :close-on-click-modal="false"> |
|
|
<el-form :model="saveTool" label-position="top" :rules="toolRules" ref="saveToolForm"> |
|
|
<el-form :model="saveTool" label-position="top" :rules="toolRules" ref="saveToolForm"> |
|
|
<el-row :gutter="10"> |
|
|
<el-row :gutter="10"> |
|
|
<el-col :span="8"> |
|
|
<el-col :span="8"> |
|
|
<el-form-item label="工具编码" prop="toolNo" :show-message="false"> |
|
|
|
|
|
<span slot="label"> |
|
|
|
|
|
<a @click="toolVisible = true">工具编码</a> |
|
|
|
|
|
</span> |
|
|
|
|
|
<el-input v-model="saveTool.toolNo" @blur="handleToolNoBlur"></el-input> |
|
|
|
|
|
</el-form-item> |
|
|
|
|
|
|
|
|
<!-- <el-form-item label="工具编码" prop="toolNo" :show-message="false">--> |
|
|
|
|
|
<!-- <el-input v-model="saveTool.toolNo" @blur="handleToolNoBlur"></el-input>--> |
|
|
|
|
|
<!-- </el-form-item>--> |
|
|
</el-col> |
|
|
</el-col> |
|
|
<el-col :span="16"> |
|
|
|
|
|
|
|
|
<el-col :span="24"> |
|
|
<el-form-item label="工具描述" prop="toolDesc" :show-message="false"> |
|
|
<el-form-item label="工具描述" prop="toolDesc" :show-message="false"> |
|
|
<el-input v-model="saveTool.toolDesc" :disabled="saveTool.toolNo !== '*'"></el-input> |
|
|
|
|
|
|
|
|
<span slot="label" v-if="saveTool.toolNo !== '*'"> |
|
|
|
|
|
<a @click="toolVisible = true">工具描述</a> |
|
|
|
|
|
</span> |
|
|
|
|
|
<el-input v-model="saveTool.toolDesc" :disabled="saveTool.toolNo === '*'"></el-input> |
|
|
</el-form-item> |
|
|
</el-form-item> |
|
|
</el-col> |
|
|
</el-col> |
|
|
<el-col :span="8"> |
|
|
|
|
|
|
|
|
<el-col :span="12"> |
|
|
<el-form-item label="分摊数量" prop="toolQty" :show-message="false"> |
|
|
<el-form-item label="分摊数量" prop="toolQty" :show-message="false"> |
|
|
<el-input-number style="width: 100%" :controls="false" :step="0" :precision="0" v-model="saveTool.toolQty"></el-input-number> |
|
|
|
|
|
|
|
|
<el-input-number style="width: 100%" :controls="false" :disabled="saveTool.toolNo ==='*'" :step="0" :precision="0" v-model="saveTool.toolQty"></el-input-number> |
|
|
</el-form-item> |
|
|
</el-form-item> |
|
|
</el-col> |
|
|
</el-col> |
|
|
<el-col :span="8"> |
|
|
|
|
|
<el-form-item label="Mark up" prop="expectedServiceLife" :show-message="false"> |
|
|
|
|
|
<el-input-number style="width: 100%" :controls="false" :step="0" :precision="0" v-model="saveTool.expectedServiceLife"></el-input-number> |
|
|
|
|
|
|
|
|
<el-col :span="12"> |
|
|
|
|
|
<el-form-item label="Mark up%" prop="expectedServiceLife" :show-message="false"> |
|
|
|
|
|
<el-input-number style="width: 100%" :controls="false" :disabled="saveTool.toolNo ==='*'" :step="0" :precision="0" v-model="saveTool.expectedServiceLife"></el-input-number> |
|
|
</el-form-item> |
|
|
</el-form-item> |
|
|
</el-col> |
|
|
</el-col> |
|
|
</el-row> |
|
|
</el-row> |
|
|
<el-row :gutter="10"> |
|
|
<el-row :gutter="10"> |
|
|
<el-col :span="8"> |
|
|
|
|
|
|
|
|
<el-col :span="12"> |
|
|
<el-form-item label="模具费金额" prop="unitCost" :show-message="false"> |
|
|
<el-form-item label="模具费金额" prop="unitCost" :show-message="false"> |
|
|
<el-input-number style="width: 100%" :controls="false" :step="0" :precision="4" v-model="saveTool.unitCost"></el-input-number> |
|
|
|
|
|
|
|
|
<el-input-number style="width: 100%" :controls="false" :disabled="saveTool.toolNo ==='*'" :step="0" :precision="4" v-model="saveTool.unitCost"></el-input-number> |
|
|
</el-form-item> |
|
|
</el-form-item> |
|
|
</el-col> |
|
|
</el-col> |
|
|
<el-col :span="8"> |
|
|
|
|
|
|
|
|
<el-col :span="12"> |
|
|
<el-form-item label="单片分摊成本" prop="quoteUnitCost" :show-message="false"> |
|
|
<el-form-item label="单片分摊成本" prop="quoteUnitCost" :show-message="false"> |
|
|
<el-input-number style="width: 100%" :controls="false" :disabled="saveTool.toolNo !==' '" :step="0" :precision="4" v-model="saveTool.quoteUnitCost"></el-input-number> |
|
|
|
|
|
|
|
|
<el-input-number style="width: 100%" :controls="false" :disabled="saveTool.toolNo !=='*'" :step="0" :precision="4" v-model="saveTool.quoteUnitCost"></el-input-number> |
|
|
</el-form-item> |
|
|
</el-form-item> |
|
|
</el-col> |
|
|
</el-col> |
|
|
<el-col :span="24"> |
|
|
<el-col :span="24"> |
|
|
|