|
|
|
@ -4,6 +4,12 @@ |
|
|
|
<el-form-item label="物料号"> |
|
|
|
<el-input v-model="searchData.modelNo" clearable placeholder="请输入物料号" style="width: 160px"></el-input> |
|
|
|
</el-form-item> |
|
|
|
<el-form-item label="物料名称"> |
|
|
|
<el-input v-model="searchData.materialName" clearable placeholder="请输入物料名称" style="width: 160px"></el-input> |
|
|
|
</el-form-item> |
|
|
|
<el-form-item label="规格"> |
|
|
|
<el-input v-model="searchData.materialSpec" clearable placeholder="请输入规格" style="width: 160px"></el-input> |
|
|
|
</el-form-item> |
|
|
|
<el-form-item label="状态"> |
|
|
|
<el-select v-model="searchData.status" clearable placeholder="全部" style="width: 120px"> |
|
|
|
<el-option label="已排产" value="已排产"></el-option> |
|
|
|
@ -34,9 +40,19 @@ |
|
|
|
v-loading="dataListLoading" |
|
|
|
style="width: 100%" |
|
|
|
@current-change="onCurrentRowChange"> |
|
|
|
<el-table-column label="操作" width="200" align="center"> |
|
|
|
<template slot-scope="scope"> |
|
|
|
<a type="text" @click="openEditDialog(scope.row)" v-if="scope.row.status === '已排产'">修改</a> |
|
|
|
<a type="text" @click="openAssignDialog(scope.row)" v-if="scope.row.status !== '已完成' && scope.row.currentNode!=='全部完成'">分配人员</a> |
|
|
|
<a type="text" @click="finishTask(scope.row)" v-if="scope.row.status !== '已完成'">完工</a> |
|
|
|
<a type="text" style="color:#F56C6C" @click="deleteTask(scope.row)" v-if="scope.row.status !== '已完成'">删除</a> |
|
|
|
</template> |
|
|
|
</el-table-column> |
|
|
|
<el-table-column type="index" label="#" width="50" align="center"></el-table-column> |
|
|
|
<!-- <el-table-column prop="orderNo" label="任务单号" width="180" align="center"></el-table-column>--> |
|
|
|
<el-table-column prop="modelNo" label="物料号" width="160" align="center"></el-table-column> |
|
|
|
<el-table-column prop="materialName" label="物料名称" width="160" align="center" show-overflow-tooltip></el-table-column> |
|
|
|
<el-table-column prop="materialSpec" label="规格" width="160" align="center" show-overflow-tooltip></el-table-column> |
|
|
|
<el-table-column prop="taskQty" label="计划数量" width="100" align="center"></el-table-column> |
|
|
|
<el-table-column prop="reportQty" label="累计报工数量" width="120" align="center"></el-table-column> |
|
|
|
<el-table-column prop="currentNode" label="当前节点" width="120" align="center"></el-table-column> |
|
|
|
@ -55,14 +71,7 @@ |
|
|
|
<el-table-column prop="finishDate" label="完工日期" width="120" align="center"> |
|
|
|
<template slot-scope="scope">{{ scope.row.finishDate || '-' }}</template> |
|
|
|
</el-table-column> |
|
|
|
<el-table-column label="操作" width="300" align="center"> |
|
|
|
<template slot-scope="scope"> |
|
|
|
<a type="text" @click="openEditDialog(scope.row)" v-if="scope.row.status === '已排产'">修改</a> |
|
|
|
<a type="text" @click="openAssignDialog(scope.row)" v-if="scope.row.status !== '已完成' && scope.row.currentNode!=='全部完成'">分配人员</a> |
|
|
|
<a type="text" @click="finishTask(scope.row)" v-if="scope.row.status !== '已完成'">完工</a> |
|
|
|
<a type="text" style="color:#F56C6C" @click="deleteTask(scope.row)" v-if="scope.row.status !== '已完成'">删除</a> |
|
|
|
</template> |
|
|
|
</el-table-column> |
|
|
|
|
|
|
|
</el-table> |
|
|
|
|
|
|
|
<el-pagination |
|
|
|
@ -139,6 +148,10 @@ |
|
|
|
class="edit-form"> |
|
|
|
<el-row :gutter="20"> |
|
|
|
<el-col :span="12"><el-form-item label="物料号" required><el-input v-model="saveHeaderData.modelNo"></el-input></el-form-item></el-col> |
|
|
|
<el-col :span="12"><el-form-item label="物料名称" required><el-input v-model="saveHeaderData.materialName"></el-input></el-form-item></el-col> |
|
|
|
</el-row> |
|
|
|
<el-row :gutter="20"> |
|
|
|
<el-col :span="12"><el-form-item label="规格" required><el-input v-model="saveHeaderData.materialSpec"></el-input></el-form-item></el-col> |
|
|
|
<el-col :span="12"><el-form-item label="计划数量" required><el-input v-model="saveHeaderData.taskQty" :min="1" :max="999999" style="width: 100%"></el-input></el-form-item></el-col> |
|
|
|
</el-row> |
|
|
|
<el-row :gutter="20"> |
|
|
|
@ -218,7 +231,7 @@ export default { |
|
|
|
name: 'ProductionPlanMachiningTask', |
|
|
|
data() { |
|
|
|
return { |
|
|
|
searchData: { modelNo: '', status: '', planStartDate: '', planEndDate: '', page: 1, limit: 20 }, |
|
|
|
searchData: { modelNo: '', materialName: '', materialSpec: '', status: '', planStartDate: '', planEndDate: '', page: 1, limit: 20 }, |
|
|
|
saveHeaderData: {}, |
|
|
|
reportData: { orderNo: '', taskNo: '', nodeCode: 'machiningProduction', reportQty: '', remark: '' }, |
|
|
|
setUp: { reviewFlag: false, reportFlag: false, assignFlag: false, saveButton: false, reportButton: false, assignButton: false }, |
|
|
|
@ -270,6 +283,8 @@ export default { |
|
|
|
orderNo: 'MOCK-MACH-001', |
|
|
|
projectNo: 'MAT-120001', |
|
|
|
modelNo: 'MAT-120001', |
|
|
|
materialName: '导轨压板', |
|
|
|
materialSpec: 'DG-80-12', |
|
|
|
taskQty: 120, |
|
|
|
reportQty: 30, |
|
|
|
autoAssignAllUsers: true, |
|
|
|
@ -285,6 +300,8 @@ export default { |
|
|
|
orderNo: 'MOCK-MACH-002', |
|
|
|
projectNo: 'MAT-120188', |
|
|
|
modelNo: 'MAT-120188', |
|
|
|
materialName: '轿底连接件', |
|
|
|
materialSpec: 'JD-LJ-06', |
|
|
|
taskQty: 240, |
|
|
|
reportQty: 0, |
|
|
|
autoAssignAllUsers: true, |
|
|
|
@ -341,17 +358,19 @@ export default { |
|
|
|
}) |
|
|
|
}, |
|
|
|
resetQuery() { |
|
|
|
this.searchData = { modelNo: '', status: '', planStartDate: '', planEndDate: '', page: 1, limit: 20 } |
|
|
|
this.searchData = { modelNo: '', materialName: '', materialSpec: '', status: '', planStartDate: '', planEndDate: '', page: 1, limit: 20 } |
|
|
|
this.searchTable('Y') |
|
|
|
}, |
|
|
|
openEditDialog(row) { |
|
|
|
this.saveHeaderData = row |
|
|
|
? { ...row, autoAssignAllUsers: !!row.autoAssignAllUsers, nodeReportMode: row.nodeReportMode || 'PARALLEL' } |
|
|
|
: { orderNo: '', modelNo: '', taskQty: 1, reportQty: 0, planFinishDate: '', status: '已排产', autoAssignAllUsers: true, nodeReportMode: 'PARALLEL', nodeList: [] } |
|
|
|
: { orderNo: '', modelNo: '', materialName: '', materialSpec: '', taskQty: 1, reportQty: 0, planFinishDate: '', status: '已排产', autoAssignAllUsers: true, nodeReportMode: 'PARALLEL', nodeList: [] } |
|
|
|
this.setUp.reviewFlag = true |
|
|
|
}, |
|
|
|
saveTask() { |
|
|
|
if (!this.saveHeaderData.modelNo) return this.$message.warning('请先填写物料号') |
|
|
|
if (!this.saveHeaderData.materialName) return this.$message.warning('请先填写物料名称') |
|
|
|
if (!this.saveHeaderData.materialSpec) return this.$message.warning('请先填写规格') |
|
|
|
if (!this.saveHeaderData.taskQty || Number(this.saveHeaderData.taskQty) <= 0) return this.$message.warning('请输入有效的计划数量') |
|
|
|
if (!this.saveHeaderData.planFinishDate) return this.$message.warning('请选择计划完工日期') |
|
|
|
const payload = { |
|
|
|
|